【发布时间】:2021-11-07 15:19:00
【问题描述】:
我有一个 bash 脚本,它从 URL 下载大量文件并将它们保存到我的计算机,例如:
curl 'http://website.com/shop.php?store_id=[66-900]&page=[7-444]&PHPSESSID=phpsessid' -O
(以及一组标头,当您在 Firefox 中将请求复制为 curl 时获得的典型请求)
试图用python重写脚本,但结果非常困难(完全新手) 喜欢:
import requests
cookies = {
'PHPSESSID': '<phpsessid here>',
}
headers = {
'<bunch of header stuff here>'
}
params = (
('store_id', '[66-900]'),
('page', '[7-444]'),
('PHPSESSID', '<phpsessid here>'),
)
response = requests.get('http://website.com/shop.php', headers=headers, params=params, cookies=cookies)
但它什么也没做(curl 命令按照命令下载所有内容) 我意识到我可能需要将下载的内容写入一个文件,但我完全丢失了,因为我处理的不是一个文件而是数百个文件,从上面的 curl 命令可以看出。
完全丢失了我所缺少的或需要做的以在 python 中复制类似 curl 请求的内容,感谢任何帮助!
【问题讨论】:
-
requests可能会得到一些东西,但它不会自动将其保存在文件中。您应该检查response.content中的内容并编写将其写入文件的代码。 -
看来你应该把它写成
for-loop 并在store_id中使用单个值而不是[66-900]和page相同
标签: python python-requests get