我正在尝试编写一个通过动态网址下载CSV文件的网络抓取工具。
网址就像http://aaa/bbb.mcv/Download?path=xxxx.csv
我把这个网址放到我的Chrome浏览器中,但我刚开始立即下载,页面也不会改变。
我甚至无法在开发屏幕中找到任何请求。
我试图找到获取文件的方法
driver.get(url)
requests.get(url)
两者都不起作用......
有什么建议?
输出两种方式:
import requests
url = '...'
save_location = '...'
session = requests.session()
response = session.get(url)
with open(save_location, 'wb') as t:
for chunk in response.iter_content(1024):
t.write(chunk)
谢谢大家的帮助! 我终于发现问题是...... 我通过selenium登录网站,并使用请求下载文件。 Selenium没有任何身份验证信息!
所以我的解决方案是首先通过selenium获取cookie。 然后将其发送到请求中!
这是我的代码
cookies = driver.get_cookies() #selenium web driver
s = requests.Session()
for cookie in cookies:
s.cookies.set(cookie['name'], cookie['value'])
response = s.get(url)