最近没什么事,重做一下自己的爬虫。于是想加一个表单提取的功能,我目的是能直接传入html他就能解析出表单的结构,就是个类似下面的一个结果:
{
'post_url':'',
'input_field1':'',
'input_field2':'',
'select_field1':'',
...
}
查资料发现如下几个方法:
1. mechanize,ghost.py
优点:方便,ghost还支持js解析
缺点:慢,非标准库,处理方式不符合要求(要重新发起请求)
2. 正则
优点:能符合要求
缺点:错误率高
请问大家是怎么匹配页面中的表单?
1
aec4d 2015-02-23 21:26:54 +08:00
用pyquery 如果你喜欢用jQuery的话
|
2
banbanchs 2015-02-23 21:59:08 +08:00
用解析html的库:pyquery、Beautiful Soup、lxml什么的把<form>找到,解析里面的input标签就好了
|
3
tdifg OP |
5
zhanglp888 2015-02-24 11:21:20 +08:00
先用tidy,将你要抓取的html整理好了,再写正则,或用pyquery
基本上不会太大问题 |
6
tdifg OP 恩,之前想麻烦了,现在直接正则出form,然后正则input,最后逐条正则里面的属性,貌似可以达成目标了。哎,到底是没学过html啊。
|