问题1 在发出API请求之前,如何使用新的IP地址
问题2除了打印抓取的IP结果外,是否有一个好方法来测试这个IP东西是否真的有效
我制作了一个新文件,每行都有IP列表,我使用
proxies_lines = open('proxies').read().splitlines()
proxy=random.choice(proxies_lines)
我尝试了两种方法来存储代理
https://000.00.000.00:0000
https://000.00.000.00:0000
https://000.00.000.00:0000
Also saw some posts of people storing them this way. Not sure which way is best?
000.00.000.00:0000
000.00.000.00:0000
000.00.000.00:0000
我想用这个代码做什么
我已经完成了所有步骤,但是#3关于添加IP地址
这就是我构建for循环的方式
for item in stock_list:
stock_ticker=item
keys=random.choice(lines)
proxy=random.choice(proxies_lines)
time.sleep(1)
# To access the API
base_url = 'https://www.alphavantage.co/query?'
params = {'proxies' : proxy,
'function': 'OVERVIEW',
'symbol': stock_ticker,
'apikey': keys}
response_data_overview = requests.get(base_url, params=params)
data_overview_MarketCapitalization = response_data_overview.json()['MarketCapitalization']
# Print Results
print("The Market Cap for {} is = {}".format(stock_ticker,data_overview_MarketCapitalization))
print("Proxie Used {}".format(proxy))
这是正确的设置方式吗?当我运行代码时,它会打印出7只股票中5只的市值,然后停止。如果IP轮换有效,那么它将打印出7/7结果,因为对于一个IP地址/密钥,我每分钟只能执行5个请求
侧面咆哮
如果这是一个超级问题,请提前道歉。学习编码,并决定在上个月将Python作为第一语言。在TeamTreehouse上学习Python课程时,他试图做一个附带项目,用预先构建好的估值公式构建一个开源股票筛选器。超早期阶段lol,但进步就是进步https://github.com/Jakub-MFP/FIRE_Dashboard
我是未来的练Python的哈哈
看起来您正在将代理放入
params
,这是发布到服务器的数据;相反,您需要将其传递给requests.get()
,以便它知道如何发出请求规避公布的API限制充其量是粗鲁的,最糟糕的是重罪。您应该以较慢的速度(即每分钟少于5次)提出请求,或者获得具有更高限制的高级计划(或其他协商的,可能是付费访问)
如果这是一个学习项目,以较慢的速度提出请求可能是最好的方法
相关问题 更多 >
编程相关推荐