python - 如何解析特定的 wiki 页面并将其自动化?

标签 python parsing screen-scraping

我正在尝试制作一个网络应用程序,它需要解析一个特定的维基百科页面并提取一些以表格格式存储在页面上的信息。然后需要将提取的数据存储到数据库中。

我以前没有真正做过这样的事情。我应该使用什么脚本语言来做到这一点?我读了一些书,看起来 Python(使用 urllib2 和 BeautifulSoup)应该可以完成这项工作,但这是解决问题的最佳方法吗?

我知道我也可以使用 WikiMedia api 但使用 python 是解决一般解析问题的好主意吗?

此外,维基百科页面上的表格数据可能会发生变化,因此我需要每天进行解析。我如何为此自动化脚本?还有没有像 svn 这样的外部工具的版本控制的想法,以便在需要时可以轻松恢复更新?

最佳答案

What scripting language should I use to do this?

Python 会做,因为你已经标记了你的问题。

looks like Python (using urllib2 & BeautifulSoup) should do the job, but is it the best way of approaching the problem.

这是可行的。我个人会使用 lxml.etree。另一种方法是以原始格式获取页面,然后你有一个不同的解析任务。

I know I could also use the WikiMedia api but is using python a good idea for general parsing problems?

这似乎是一个陈述和一个无关的争论性问题。主观上,如果我要解决你问的问题,我会使用 python。

Also the tabular data on the wikipedia page may change so I need to parse every day. How do I automate the script for this?

Unix 定时任务。

Also any ideas for version control without external tools like svn so that updates can be easily reverted if need be?

Subversion 存储库可以与您编写的脚本在同一台机器上运行。或者,您可以使用分布式版本控制系统,例如git.


奇怪的是,您没有提到您打算如何处理这些数据。

关于python - 如何解析特定的 wiki 页面并将其自动化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5647413/

相关文章:

python - 使用 Selenium 和 Scrapy 在 Python 中调用方法

c# - 具有大数据集的不完整 HttpWebResponse

javascript - 检查/记录 PhantomJS/CasperJS 使用了多少带宽

Python-ModuleNotFoundError : No module named 'x'

python字符串输入到整数转换

Python请求包: lost connection while streaming

c - 使用 MiniXML 在 C 中解析 XML 文件

java - 来自django的android格式日期时间

ios - 如何使用本地数据加载应用程序并随后在线时更新它。

Node.js:代理站点如何处理相对 URL?