我希望使用Python 2.7从政府网站下载数千条记录的数据。记录的一个示例是http://camara.cl/pley/pley_detalle.aspx?prmID=1252&prmBL=1-07。两个相关的问题:
(1)该网站依赖鼠标点击(在源代码中:
<a href="javascript:__doPostBack('ctl00$mainPlaceHolder$btnUrgencias','')">Urgencias</a>
访问我感兴趣的另一部分数据;和
(2)我一般都是网络抓取的文盲,尤其是Python。
到目前为止,边做边学已经让我走了一半路。互联网资源here,here和here促使我朝着正确的方向前进。但我撞墙了。
我可以获取调用url时填充屏幕的信息的源代码。
import requests
id = '1252'
bl = '1-07'
url = 'http://camara.cl/pley/pley_detalle.aspx'
parametros = {'prmID': id, 'prmBL': bl}
r = requests.get(url, params = parametros)
hitos = r.text
print hitos
但是我从“Urgencias”标签获取信息方面没有成功。因此,一次尝试
import json
parametros = {'prmID': id, 'prmBL': bl, '__EVENTTARGET': 'ctl00$mainPlaceHolder$btnUrgencias'}
headers = {'content-type': 'application/x-www-form-urlencoded; charset=utf-8'}
p = requests.post(url, data = json.dumps(parametros), headers = headers)
urgencias = p.text
print urgencias
我显然没有正确构建/发送请求。 (我相信,我也错过了饼干。)
任何帮助都将非常赞赏。 (我可以使用任何可以在Ubuntu机器上运行的方法!)