需要使用Python 2.x解析特定网站

时间:2013-08-26 18:56:27

标签: python html parsing web urllib

我正在尝试从Health Inspection网站检索信息,然后解析并将数据保存到变量,然后将记录保存到文件中。我想我可以使用词典来存储每个业务的信息。

相关网站是:http://www.swordsolutions.com/Inspections

单击网站上的[搜索]将开始显示信息。

我需要能够将一些搜索数据传递到网站,然后将返回的信息解析为变量,然后解析为文件。

我使用以下网址将网站提取到文件:

import urllib
u = urllib.urlopen('http://www.swordsolutions.com/Inspections')
data = u.read()
f = open('data.html', 'wb')
f.write(data)
f.close()

这是urllib检索到的数据:http://bpaste.net/show/126433/,目前没有显示任何有用的数据。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我会推荐你​​。

您想要提交包含多个预定义字段值的表单。然后你想要解析返回的数据。然后,接下来的步骤取决于是否很容易自动化表单发布请求。

你有很多选择:

  • 使用浏览器开发者工具分析点击“提交”时发生的事情。然后,如果有简单的POST请求 - 使用urllib2requestsmechanize或任何您喜欢的方式进行模拟
  • 尝试Scrapy,而FormRequest
  • selenium的帮助下使用真实的自动浏览器。将数据填入字段,单击提交,使用相同的工具获取和解析数据(selenium)

基本上,如果表单提交过程涉及很多javascript逻辑 - 您必须使用自动浏览工具,例如selenium

另外,请注意,有几种解析HTML的工具:BeautifulSouplxml

另见:

希望有所帮助。