形式如上~工作需要每天提交大量备案材料,目前只能一个pdf一个pdf的上传,请问能不能通过python或者插件啥的实现批量上传呢?希望老师们指个学习的方向~~谢谢!
1条回答 默认 最新
hbcqg712 2023-11-19 18:07关注import os import requests from bs4 import BeautifulSoup # 定义要提交的PDF文件路径和目标网页的信息 pdf_dir = "/path/to/pdf/files" url = "http://example.com/upload" username = "your_username" password = "your_password" # 遍历PDF文件目录,并对每个文件进行处理 for filename in os.listdir(pdf_dir): if filename.endswith(".pdf"): # 读取PDF文件内容 with open(os.path.join(pdf_dir, filename), "rb") as f: pdf_content = f.read() # 构造表单数据并提交表单 form_data = { "username": username, "password": password, "file": ("file", pdf_content, "application/pdf") # 将PDF文件作为二进制数据提交 } response = requests.post(url, data=form_data) # 使用BeautifulSoup解析提交后的页面,检查是否成功提交 soup = BeautifulSoup(response.text, "html.parser") if soup.find("div", {"class": "success-message"}) is not None: print(f"Successfully submitted {filename}") else: print(f"Failed to submit {filename}")在上面的示例中,我们首先定义了要提交的PDF文件路径和目标网页的信息。然后,我们使用os模块遍历PDF文件目录,并对每个文件进行处理。对于每个PDF文件,我们使用内置的open函数读取其内容,并将其作为表单数据提交到目标网页。我们使用requests库来执行POST请求,将表单数据提交到目标网页。提交后,我们使用BeautifulSoup库来解析提交后的页面,并检查是否成功提交。如果成功提交,则打印成功消息,否则打印失败消息。
解决 无用评论 打赏 举报