Python网络爬虫实习报告总结归纳.docx

上传人:b****3 文档编号:4833175 上传时间:2022-12-10 格式:DOCX 页数:3 大小:16.67KB
下载 相关 举报
Python网络爬虫实习报告总结归纳.docx_第1页
第1页 / 共3页
Python网络爬虫实习报告总结归纳.docx_第2页
第2页 / 共3页
Python网络爬虫实习报告总结归纳.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Python网络爬虫实习报告总结归纳.docx

《Python网络爬虫实习报告总结归纳.docx》由会员分享,可在线阅读,更多相关《Python网络爬虫实习报告总结归纳.docx(3页珍藏版)》请在冰豆网上搜索。

Python网络爬虫实习报告总结归纳.docx

Python网络爬虫实习报告总结归纳

Python网络爬虫实习报告

一、

选题背景

二、爬虫原理

三、爬虫历史和分类

四、常用爬虫框架比较

Scrapy框架:

Scrapy框架是一套比较成熟的Python爬虫框架,是使用Python开发的快速、高层次的信息爬取框架,可以高效的爬取web页面并提取出结构化数据。

Scrapy应用范围很广,爬虫开发、数据挖掘、数据监测、自动化测试等。

Crawley框架:

Crawley也是Python开发出的爬虫框架,该框架致力于改变人们从互联网中提取数据的方式。

Portia框架:

Portia框架是一款允许没有任何编程基础的用户可视化地爬取网页的爬虫框架。

newspaper框架:

newspaper框架是一个用来提取新闻、文章以及内容分析的Python爬虫框架。

Python-goose框架:

Python-goose框架可提取的信息包括:

<1>文章主体内容;<2>文章主要图片;<3>文章中嵌入的任heYoutube/Vimeo视频;<4>元描述;<5>元标签

五、数据爬取实战(豆瓣网爬取电影数据)

1分析网页

#获取html源代码def__getHtml():

data=[]pageNum=1pageSize=0try:

while(pageSize<=125):

#'Referer':

None#注意如果依然不能抓取的话,这里可以设置抓取网站的host#}#opener.addheaders=[headers]pageNum)pageSize+=25pageNum+=1print(pageSize,pageNum)exceptExceptionase:

raiseereturndata

2爬取数据

def__getData(html):

title=[]#电影标题#rating_num=[]#评分range_num=[]#排名#rating_people_num=[]#评价人数movie_author=[]#导演data={}#bs4解析htmlsoup=BeautifulSoup(html,"html.parser")forliinsoup.find("ol",attrs={'class':

'grid_view'}).find_all("li"):

title.append(li.find("span",class_="title").text)#rating_num.append(li.find("div",class_='star').find("span",class_='rating_num').text)range_num.append(li.find("div",class_='pic').find("em").text)#spans=li.find("div",class_='star').find_all("span")#forxinrange(len(spans)):

#ifx<=2:

#pass#else:

#rating_people_num.append(spans[x].string[-len(spans[x].string):

-3])str=li.find("div",class_='bd').find("p",class_='').text.lstrip()index=str.find("主")if(index==-1):

index=str.find("...")print(li.find("div",class_='pic').find("em").text)if(li.find("div",class_='pic').find("em").text==210):

index=60#print("aaa")#print(str[4:

index])movie_author.append(str[4:

index])data['title']=title#data['rating_num']=rating_numdata['range_num']=range_num#data['rating_people_num']=rating_people_numdata['movie_author']=movie_authorreturndata

3数据整理、转换

def__getMovies(data):

f.write("")f.write("Inserttitlehere")f.write("")f.write("

爬取豆瓣电影

")f.write("

作者:

刘文斌

")f.write("

时间:

"+nowtime+"

")f.write("
")f.write("")f.write("")f.write("")f.write("电影")#f.write("评分")f.write("排名")#f.write("评价人数")f.write("导演")f.write("")f.write("")

f.write("")fordataindatas:

foriinrange(0,25):

f.write("")f.write("

orange;text-align:

center'>%s"%data['title'][i])#f.write("

blue;text-align:

center'>%s"%data['rating_num'][i])f.write("

red;text-align:

center'>%s"%data['range_num'][i])#f.write("

blue;text-align:

center'>%s"%data['rating_people_num'][i])f.write("

black;text-align:

center'>%s"%data['movie_author'][i])f.write("")f.write("")

f.write("")f.write("")f.write("")f.write("")f.close()

if__name__=='__main__':

datas=[]htmls=__getHtml()foriinrange(len(htmls)):

data=__getData(htmls[i])datas.append(data)__getMovies(datas)

4数据保存、展示

结果如后图所示:

5技术难点关键点

数据爬取实战(搜房网爬取房屋数据)

frombs4importBeautifulSoupimportrequestsrep=requests.get()rep.encoding="gb2312"#设置编码方式html=rep.textsoup=BeautifulSoup(html,'html.parser')f=open(,'w',encoding='utf-8')f.write("")f.write("Inserttitlehere")f.write("")f.write("

新房成交TOP3

")f.write("")f.write("

房址

")f.write("

成交量

")f.write("

均价

")forliinsoup.find("ul",class_="ul02").find_all("li"):

name=li.find("div",class_="pbtext").find("p").textchengjiaoliang=li.find("span",class_="red-f3").texttry:

junjia=li.find("div",class_="ohter").find("p",class_="gray-9")#.text.replace('?

O','平方米')exceptExceptionase:

junjia=li.find("div",class_="gray-9")#.text.replace('?

O','平方米')f.write("%s"%name)f.write("%s"%chengjiaoliang)f.write("%s"%junjia)print(name)f.write("")f.write("")

六、总结

教师评语:

成绩:

指导教师:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1