位置: 编程技术 - 正文
推荐整理分享python动态网页批量爬取(python动态网页开发教程),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:python能做动态网站吗,python制作动态网页,python获取网页动态数据,python批量操作网页,python 动态网页,python动态页面爬虫,python 动态网页,python 动态网页爬虫,内容如对您有帮助,希望把文章链接给更多的朋友!
四六级成绩查询网站我所知道的有两个:学信网(
网站的代码如下:
由图中可以看出表单提交的链接为/cet/query,即:
但是,点击查看源代码之后发现,没有成绩,即代码仍是上面那个,之后按F查看代码:
该代码显示了成绩,可以知道,该网站使用的是动态网页,用的JavaScript或者Ajax.js还是其他的我就不知道了0.0。上面为需求。
前言:使用过BeautifulSoup爬取过,但是BeautifulSoup是爬取不了动态网页的,上各种论坛找各种资料,用了n种东西,scapy,pyqt等等,走了真心不少弯路,不是不行,应该是我不会用,最终用了selenium和phantomjs,这两个应该也是目前最流行的爬虫模块了吧。
一、导入selenium和phantomjs
代码说明:
3.selenium可以加载很多驱动,比如Chrome、FireFox等,这里需要有这两个浏览器和驱动才行,折腾了一下,网上说Phantomjs是较好的了
5、6、7分别是准考证号,姓名和提交
二、字符处理
提交之后就可以直接查找了:
代码说明:
1.查看姓名
2.查看分数及其具体成绩
打印之后为:
之后要对分数进行字符串处理,选取各部分的数字,这里我们采用re模块:
其中m是数组,输出的是["","","",""]
三、数据库
我们学校也不知说很渣还是人性化,反正公布了全校的四六级准考证号,当然,是excel的,需要导入mysql数据库,打开Excel之后,我发现微软大法和Oracle真是牛,Excel居然有mysql workbench连接部分。
数据库代码如下:
代码说明:
3.python连接数据库代码
6.连接数据库取得姓名部分
9.这行我好无语啊,使用‘“+ss+”'这样的写法一直报错,最终找了半天资料,这个写法我不太喜欢,但是凑合着用吧。
.记得一定要提交事务!!!commit()!!!不然是没有效果的
四、使用代理服务器(保留以后写)
运行了一段时间之后,大概抓了几百人的吧,然后就出现要求验证码了,解决办法只能处理验证码或者使用代理服务器了,这部分继续加强学习再弄出来了?(^ω^)?
五、源代码和效果
总结:python的字符串处理细节真的很重要,动不动就输出错误,还有IDE的编码不一样,记得还有个系统编码,字符编码,环境编码,数据库编码等等都要一致。
标签: python动态网页开发教程
本文链接地址:https://www.jiuchutong.com/biancheng/382346.html 转载请保留说明!友情链接: 武汉网站建设