Sur*_*ian 5 python urllib web-scraping python-requests
我已经实现了一个代码来下载股票市场所有日期的 bhav 副本。经过大约两年的抓取,我的IP似乎被封锁了。
这段代码对我不起作用。
import urllib.request
url = 'https://www1.nseindia.com/content/historical/DERIVATIVES/2014/APR/fo01APR2014bhav.csv.zip'
response = urllib.request.urlopen(url)
Run Code Online (Sandbox Code Playgroud)
它给出以下错误:
urllib.error.HTTPError: HTTP Error 403: Forbidden
Run Code Online (Sandbox Code Playgroud)
我想知道如何使用代理来获取数据。任何帮助将非常感激。
import urllib.request
proxy_host = '1.2.3.4:8080' # host and port of your proxy
url = 'https://www1.nseindia.com/content/historical/DERIVATIVES/2014/APR/fo01APR2014bhav.csv.zip'
req = urllib.request.Request(url)
req.set_proxy(proxy_host, 'http')
response = urllib.request.urlopen(req)
Run Code Online (Sandbox Code Playgroud)
为了获得更大的灵活性,您可以使用代理处理程序 - https://docs.python.org/3/library/urllib.request.html
proxy_handler = urllib.request.ProxyHandler({'http': '1.2.3.4:3128/'})
proxy_auth_handler = urllib.request.ProxyBasicAuthHandler()
proxy_auth_handler.add_password('realm', 'host', 'username', 'password')
opener = urllib.request.build_opener(proxy_handler, proxy_auth_handler)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2676 次 |
| 最近记录: |