我正在使用以下 Python 代码为网站编写 Web 抓取工具:
import requests
def scrape(url):
req = requests.get(url)
with open('out.html', 'w') as f:
f.write(req.text)
Run Code Online (Sandbox Code Playgroud)
它工作了几次,但随后网站返回了一个错误的 HTML 页面(当我打开浏览器时,我有一个验证码要完成)。
有没有办法通过例如更改 IP 地址来避免这种“禁令”?
小智 15
正如评论和您自己已经提到的那样,更改 IP 可能会有所帮助。要轻松做到这一点,请查看 vpngate.py:
https://gist.github.com/Lazza/bbc15561b65c16db8ca8
链接中提供了操作方法。
玩得开心
您可以在请求库中使用代理。你可以在几个不同的网站上找到一些免费的代理,比如https://www.sslproxies.org/和http://free-proxy.cz/en/proxylist/country/US/https/uptime/level3但不是所有的他们工作,他们不应该信任敏感信息。
例子:
proxy = {
"https": 'https://158.177.252.170:3128',
"http": 'https://158.177.252.170:3128'
}
response=requests.get('https://httpbin.org/ip', proxies=proxy)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37389 次 |
| 最近记录: |