我想使用Python自动化以下任务: 给定文件ID 8426和日期03312021
我做了一些研究,发现了一个python模块请求:https://docs.python-requests.org/en/master/user/quickstart/
看起来我应该能够声明一个数据对象并传递它,以便发送请求
r = requests.post('https://my_url', data = {'key':'value'})
with open(test.pdf, "wb") as f:
f.write(r.content)
但是,在本例中,我很难在数据对象内部找到正确的属性。我尝试了一些,但无法获取所需的pdf文件。任何帮助都将不胜感激
我知道您询问了“请求”,但我认为使用Selenium很容易。如果需要,请尝试以下操作:
您还可以更改获取id、日期值和睡眠时间的方式
确保chromedriver在PATH中可用,或将其保存在与脚本相同的目录中
所以。。对于
request.post()
方法,data
参数是字典,它表示html post表单的键值对。为了找到它,您可以在浏览器中的DevTools(Chrome和Mozilla中的shift-ctr-I)上找到它,打开网络选项卡并提交需要检查的表单——在您的情况下,表单表示为单个<input type="submit" ... >
元素(样式化为“下载PDF”按钮)。点击此输入后,浏览器将向服务器发出格式良好的POST请求,您可以在“网络”选项卡上看到该请求的正确html标题和键值-只需将其grub并在python脚本中形成两个DICT:第一个带有标题,第二个带有POST表单值您提前发布的url示例
查找带有特定
fileid
和date
的文档:此信息在url参数中给出:
... /ViewPDFFacsimile.aspx?ds=call&idType=fdiccert&id=8426&date=03312021'
您还可以在网络选项卡上找到它(在Chrome中称为“查询字符串参数”)。要在请求中传递它,请使用request.post()
方法的params
参数相关问题 更多 >
编程相关推荐