python - 寻找自动从 CMS 中抓取值以构建报告的最佳方法
问题描述
第一篇文章,所以对我放轻松:)
情况是我正试图从基于网络的(客户)CMS(客户管理系统)中抓取信息,上面有销售信息,然后将这些值输入到 Excel 或 Google 工作表中以最终构建报告,从而节省手动翻阅所有错误的时间/错误。
我记得曾经使用过一个解决方案(多个工具),它基本上会遍历页面并从这些页面上定义的字段中获取值,然后将这些信息放入工作表上的列中,然后我们将手动操作。我很确定它是基于 python 的,并且(我认为)使用 tampermonkey 扩展来获取关于 chrome 的开发/调试器版本的信息。
这个过程看起来像这样:
- 已登录 CMS -> 执行工具/脚本,然后在新窗口中自动打开订单
- 然后它会通过该顺序并从特定字段中获取值,然后将这些值复制到工作表中
- 然后它会关闭窗口并继续执行指定范围内的下一个订单
- 一旦完成指定的(日期)范围,列将类似于销售人员/订单号/销售金额/附件金额/等 - 然后手动操作,无需进一步自动化(除了工作表中的公式)
任何人都对如何完成这项工作有任何想法,或者任何人都知道针对这种特定类型任务的任何指南?尝试尽可能地自动化这一点 - 在此先感谢。
解决方案
Python 应该是一个不错的选择,因为它为您提供了许多不同的工具。根据 CMS 的功能,您可以选择不同的软件包。
简单的 HTML 抓取
对于静态 HTML 内容的简单抓取,scrapy或Beautiful Soup就足够了。
抓取包括可执行内容
对于这些情况,您可以使用Selenium,您可以将其与 Beautiful Soup 结合使用。有关更多详细信息,请参阅此相关问题和此问题。
推荐阅读
- python - 按顺序打印
- amazon-web-services - DynamoDB 等效于 SQL 的键或属性“不在(“value1”,“value2”...)”
- python - 熊猫将一个系列转换为日期时间对象
- reactjs - React Navigation 删除以前的路线并转到以前的两倍?
- android - 如何通过支付金额以及如何在应用内支付 sdk 中获取 transaction_id?
- javascript - 如何使用 setTimeout 函数延迟重定向到多个网站?
- javascript - 如何阻止用户输入 0-1 和不是 az 的字符以及捕捉粘贴?(Vue)
- c# - 为什么 GetTextInRun() 方法在“ö”、“ü”或/和“ä”处停止?
- python - 是否可以通过装饰器将实例方法注册为信号接收器?
- delphi - Delphi 10.2 主题 - “light” vsd “dark”