Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 仅在某些网站上使用python3时出现Web垃圾处理错误_Python 3.x_Web Scraping - Fatal编程技术网

Python 3.x 仅在某些网站上使用python3时出现Web垃圾处理错误

Python 3.x 仅在某些网站上使用python3时出现Web垃圾处理错误,python-3.x,web-scraping,Python 3.x,Web Scraping,此代码适用于谷歌和雅虎等网站,返回“good” import urllib.request as ur #url="http://www.evga.com" #url="http://www.asus.com/us/" url="http://www.google.com" import urllib.error as ure try: conn = ur.urlopen(url) except ure.HTTPError a

此代码适用于谷歌和雅虎等网站,返回“good”

import urllib.request as ur
#url="http://www.evga.com"
#url="http://www.asus.com/us/"
url="http://www.google.com"
import urllib.error as ure

try:
    conn = ur.urlopen(url)
except ure.HTTPError as e:
    # Return code error (e.g. 404, 501, ...)
    # ...
    print('HTTPError: {}'.format(e.code))
except ure.URLError as e:
    # Not an HTTP-specific error (e.g. connection refused)
    # ...
    print('URLError: {}'.format(e.reason))
else:
    # 200
    # ...
    print('good')
但对于asus,给出了错误403,而对于EVGA,则根本没有给出响应。
如何解决此问题?

您遇到了一个典型的标题问题。urllib不是最好的主意,因为您将有很多实现问题。相信我,这真是一团糟

对于网页抓取,我建议使用
请求
selenium
。第一个是一个良好的开端

让我来分享你的
请求
版本的代码

import requests
url="http://www.evga.com"
#url="http://www.asus.com/us/"
#url="http://www.google.com"

headers = {"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko Chrome/83.0.4103.97 Safari/537.36"}
r = requests.get(url, headers=headers)
print(r.status_code)
收益率:

200
我注意到
”http://www.evga.com“
是个麻烦制造者,但使用标题可以控制一切


有关请求的更多信息:

谢谢。有趣的是,有些页面重定向了请求,但仍然给出了200。试试url=“我想我必须弄清楚如何知道我是否被重定向。还有一个问题,看看硒。虽然这需要更多的资源,但可以帮助进行一步一步的刮除。