当前位置:首页 >专题范文 > 公文范文 > Python网络爬虫实习报告总结归纳

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

发布时间: 2022-06-29 17:05:03 来源:网友投稿

下面是小编为大家整理的Python网络爬虫实习报告总结归纳,供大家参考。

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 = 1

pageSize = 0

try:

while (pageSize <= 125):

# "Referer":None #注意如果依然不能抓取的话,这里可以设置抓取网站的host

# }

# opener.addheaders = [headers]

pageNum)

pageSize += 25

pageNum += 1

print(pageSize, pageNum)

except Exception as e:

raise e

return data

2爬取数据

def __getData(html):

title = [] # 电影标题

#rating_num = [] # 评分

range_num = [] # 排名

#rating_people_num = [] # 评价人数

movie_author = [] # 导演

data = {}

# bs4解析html

soup = BeautifulSoup(html, "html.parser")

for li in soup.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")

#for x in range(len(spans)):

# if x <= 2:

# pass

# else:

#

rating_people_num.append(spans[x].string[-len(spans[x].stri ng):-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_num

data["range_num"] = range_num

#data["rating_people_num"] = rating_people_num

data["movie_author"] = movie_author

return data

3数据整理、转换

def __getMovies(data):

f.write("")

f.write("Insert title here")

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("

")

for data in datas:

for i in range(0, 25):

f.write("

")

f.write("

style="color:orange;text-align:center">%s" %

data["title"][i])

# f.write("

style="color:blue;text-align:center">%s" %

data["rating_num"][i])

f.write("

style="color:red;text-align:center">%s" % data["range_num"][i])

# f.write("

style="color:blue;text-align:center">%s" % data["rating_people_num"][i])

f.write("

style="color: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()

for i in range(len(htmls)):

data = __getData(htmls[i])

datas.append(data)

__getMovies(datas)

4数据保存、展示

结果如后图所示:

5技术难点关键点

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

from bs4 import BeautifulSoup

import requests

rep = requests.get()

rep.encoding = "gb2312" # 设置编码方式

html = rep.text

soup = BeautifulSoup(html, "html.parser")

f = open(, "w",encoding="utf-8")

f.write("")

f.write("Insert title here")

f.write("")

f.write("

新房成交TOP3

")

f.write("

")

f.write("

")

f.write("

")

f.write("

")

for li in soup.find("ul",class_="ul02").find_all("li"):

name=li.find("div",class_="pbtext").find("p").text

chengjiaoliang=li.find("span",class_="red-f3").text try:

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

except Exception as e:

junjia=li.find("div",class_="gray-9")#.text.replace("?O", "平方米")

f.write("

" % name)

f.write("

" % chengjiaoliang)

f.write("

" % junjia)

print(name)

f.write("

房址

成交量

均价

color=red>%s

color=blue>%s

color=green>%s

")

f.write("")

六、总结

教师评语

成绩:指导教师:

推荐访问:python数据分析报告总结 爬虫 归纳 实习报告

版权所有:以恒秘书网 2018-2024 未经授权禁止复制或建立镜像[以恒秘书网]所有资源完全免费共享

Powered by 以恒秘书网 © All Rights Reserved.。备案号:辽ICP备18005056号-2