【发布时间】:2018-07-04 23:42:04
【问题描述】:
我正在使用以下 Python 代码为网站编写一个网络爬虫:
import requests
def scrape(url):
req = requests.get(url)
with open('out.html', 'w') as f:
f.write(req.text)
它工作了几次,但网站返回了一个错误的 HTML 页面(当我打开浏览器时,我需要完成一个验证码)。
有没有办法避免这种“禁令”,例如更改 IP 地址?
【问题讨论】:
-
如果禁令是基于你的 IP 地址,那么更改 IP 地址可能会解决这个问题,但这不是 python 可以控制的。
-
嗯,要更改 IP 地址,您可以在具有不同 IP 地址的不同系统上运行完全相同的代码...
-
您是否考虑过,如果您收到
banned并且有验证码,那么网站所有者可能不希望您抓取他们的网站? -
你为什么不尝试使用代理?
标签: python http python-requests