1、Python网络爬虫实习报告总结归纳Python 网络爬虫实习报告选题背景二、 爬虫原理三、 爬 虫历史和分类四、 常 用爬虫框架比较Scrapy框架:Scrapy框架是一套比较成熟的Python爬虫框架,是使用 Python开发的快速、高层次的信息爬取框架,可以高效的爬取 web页 面并提取出结构化数据。 Scrapy 应用范围很广, 爬虫开发、 数据挖掘、 数据监测、自动化测试等。Crawley 框架: Crawley 也是 Python 开发出的爬虫框架, 该框架致力于 改变人们从互联网中提取数据的方式。Portia 框架: Portia 框架是一款允许没有任何编程基础的用户可视化 地爬
2、取网页的爬虫框架。newspaper框架:newspaper框架是一个用来提取新闻、文章以及内容 分析的 Python 爬虫框架。Python-goose 框架: Python-goose 框架可提取的信息包括: 文章 主体内容 ;文章主要图片 ;文章中嵌入的任 heYoutube/Vimeo 视 频;元描述 ;元标签五、数据爬取实战(豆瓣网爬取电影数据)1分析网页#获取html源代码def _getHtml():data =pageNum = 1pageSize = 0try:注意如果依然不能抓取的话,这里while (pageSize = 125):#Referer:No ne #可以设置
3、抓取网站的host# = headerspageNum)pageSize += 25pageNum += 1prin t(pageSize, pageNum)except Excepti on as e:raise e return data2爬取数据 def _getData(html):title = #电影标题#rati ng_num = # 评分range_num = # 排名#rati ng_people_ num = # 评价人数movie_author = # 导演data = # bs4 解析 htmlsoup = BeautifulSoup(html,)for li in (
4、ol, attrs二class:grid_view).fi nd_all(li):(spa n, class_=title).text)#(div, class_=star).fi nd(spa n,class_=rat ing_nu m).text)(div, class_=pic).fi nd(em).text)#spa ns = (div, class_=star).fi nd_all(spa n)#for x in ran ge(le n( spa ns):# if x )( In sert titleherev/head)(vbody)(爬取豆瓣电影)(作者:刘文斌)(时间:” +
5、nowtime + )()(vtable width二800px border二1 alig n=ce nter)()()( 电影 v/fon t)#( 评分v/fon t)( 排名)#( 评价人数v/fon t)( 导演 )(v/tr)(v/thead)(vtbody)for data in datas:for i in ran ge(0, 25):()(%s % datatitlei)# (%s % datarati ng_nu mi)(%s % datara nge_nu mi)# (%s % datarati ng_people _nu mi)(%s % datamovie_autho
6、ri)()(v/tbody)(v/thead)(v/table)()()()if _name_ = _main_:datas =htmls = _getHtml()for i in ran ge(le n(htmls):data = _getData(htmlsi)(data)_getMovies(datas)4数据保存、展示结果如后图所示:5技术难点关键点数据爬取实战(搜房网爬取房屋数据)from bs4 import BeautifulSoup import requests rep =()=gb2312 #设置编码方式html =soup = BeautifulSoup(html, ”
7、)f = open(, w , encoding =utf-8 )()( In sert titleherev/head )(vbody)( 新房成交 TOP3v/center)( )( 房址 v/h2v/th)( 成交量 v/h2v/th)( 均价 v/h2v/thv/tr)for li in (ul , class_ =ul02 ).find_all( li):name=( div , class_ =pbtext ).find( p ).textchengjiaoliang=( span , class_ =red-f3 ).texttry : junjia=( div , class_ 二ohter ).find( p , class_ 二gray-9 )#.(? O,平方米)except Exception as e:junjia=( div , class_ =gray-9 )#.(?O, 平方米)(%sv/td % n ame)(vfo nt size=5pxcolor二blue%sv/td % che ngjiaolia ng)(vfo nt size=5pxcolor二gree n %sv/tdv/tr % junjia)print (name)()()六、总结教师评语:成绩:指导教师:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1