用Python打印HTML输出

2024-05-19 01:36:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在创建一个具有多种用途的程序。我称之为直接收益电子数据库(EDDY)。我遇到的最大问题是EDDY的google搜索功能。EDDY将要求用户提供输入。EDDY随后将通过将任何空格(“”)替换为加号(“+”)来稍微编辑输入,然后转到生成的url(无需打开浏览器)。然后,它从网页复制html,并应给出网站的结果和描述,并指定,而不使用html代码

这就是我目前所拥有的

import urllib
from urllib.request import urlopen, Request
from bs4 import BeautifulSoup
import requests


    

def cleanup(url):
    

    html_content = requests.get(url).text
    soup = BeautifulSoup(html_content, "lxml")
    length = len(soup.prettify()) - 1
    print(soup.prettify()[16800:length])
    
    print(soup.title.text)

    print(soup.body.text)
    
    
def eddysearch():
    
    headers = {'User-Agent': 'Chrome.exe'}
    reg_url = "http://www.google.com/search?q="
    print("Ready for query")
    query = input()
    if(query != "quit"):
        print("Searching for keyword: " + query)
        print("Please wait...")
        search = urllib.parse.quote_plus(query)
        url = reg_url + search
        req = Request(url=url, headers=headers)
        html = urlopen(req).read()
    
        cleanup(url)

        eddysearch()

    
eddysearch()

有人能帮我吗?提前谢谢


Tags: textfromimporturlsearchhtmlgoogleurllib
1条回答
网友
1楼 · 发布于 2024-05-19 01:36:18

如果您不想使用SSL证书,可以执行.read()

# Python 2.7.x
import urllib
url = "http://stackoverflow.com"
f = urllib.urlopen(url)
print f.read()


#Python 3.x

import urllib.request
url = 'http://www.stackoverflow.com'
f = urllib.request.urlopen(url)
print(f.read())

相关问题 更多 >

    热门问题