Forward团队-爬虫豆瓣top250项目-模块开发过程
项目托管平台地址:https://github.com/xyhcq/top250
开发模块功能: 爬虫对信息的处理部分
开发时间:5天的下午空余时间(每天大约1小时,边学模块的使用边开发)
实现了:爬虫的基本功能,能够爬取指定网站的信息
实现过程:导入2个python库:requests和BeautifulSoup,利用这些库自带的功能和根据之前 成员马壮分析过的网页源码信息 可以实现对网页源码内容的分析提取。
def getData(html):
# 分析代码信息,提取数据
soup = BeautifulSoup(html, "html.parser") # 找到第一个class属性值为grid_view的ol标签
movieList=soup.find('ol',attrs={'class':'grid_view'}) # 找到所有的li标签
for movieLi in movieList.find_all('li'):
# 找到第一个class属性值为hd的div标签
movieHd=movieLi.find('div',attrs={'class':'hd'})
# 找到第一个class属性值为title的span标签 # 获取电影名字
movieName=movieHd.find('span',attrs={'class':'title'}).getText()
print movieName # 获取电影链接
movieUrl=movieHd.find('a class="" href="')
print movieUrl # 获取电影导演/演员
movieBd = movieLi.find('div', attrs={'class': 'bd'})
movieSF=movieBd.find('p',attrs={'class':''}).getText()
print movieSF # 获取电影的评分
movieScore=movieLi.find('span',attrs={'class':'rating_num'}).getText()
print movieScore #获取电影的评论数
movieEval=movieLi.find('div',attrs={'class':'star'})
movieEvalNum=re.findall(r'\d+',str(movieEval))[-1]
print movieEvalNum # 获取电影短评
movieQuote = movieLi.find('span', attrs={'class': 'inq'})
# 有的电影没有短评,为防止报错,加次
if(movieQuote):
print movieQuote.getText()
else:
print ('没有短评!')
遇到的问题及问题解决方法:
安装BeautifulSoup和requests库时遇到了严重的问题:系统的python有问题,环境变量异常,不能正常运行模块的安装程序,最终在虚拟机里安装了xp系统和python2.7解决了这个问题
安装BeautifulSoup和requests库时遇到了一般的问题:导入这两个模块后程序报错,不能正常工作,最终经检查发现,安装的模块版本不适用于python2.7,重新找到适配版本安装后问题解决。
Forward团队-爬虫豆瓣top250项目-模块开发过程的更多相关文章
- 团队-爬虫豆瓣top250项目-模块开发过程
		
项目托管平台地址:https://github.com/gengwenhao/GetTop250.git 开发模块功能: "get_info()单个页面的爬取"功能,开发时间:15 ...
 - Forward团队-爬虫豆瓣top250项目-模块测试过程
		
我所做的模块不需要测试,但在后续其他人编写代码的时候,我需要对网页源码进行进一步的规范,然后指导别人在网页源码中的标签用法.
 - Forward团队-爬虫豆瓣top250项目-项目总结
		
托管平台地址:https://github.com/xyhcq/top250 小组名称:Forward团队 组长:马壮 成员:李志宇.刘子轩.年光宇.邢云淇.张良 我们这次团队项目内容是爬取豆瓣电影T ...
 - Forward团队-爬虫豆瓣top250项目-项目进度
		
项目地址:https://github.com/xyhcq/top250 我们的项目是爬取豆瓣top250的电影的信息,在做这个项目前,我们都没有经验,完全是从零开始,过程中也遇到了很多困难,不过我们 ...
 - Forward团队-爬虫豆瓣top250项目-最终程序
		
托管平台地址:https://github.com/xyhcq/top250 小组名称:Forward团队 小组成员合照: 程序运行方法: 在python中打开程序并运行:或者直接执行程序即可运行 程 ...
 - 《Forward团队-爬虫豆瓣top250项目-开发文档》
		
码云地址:https://github.com/xyhcq/top250 模块功能:获取豆瓣top250网页的源代码,并分析. def getHTMLText(url,k): # 获取网页源代码 tr ...
 - Forward团队-爬虫豆瓣top250项目-开发文档
		
项目地址:https://github.com/xyhcq/top250 我在本次项目中负责写爬虫中对数据分析的一部分,根据马壮分析过的html,我来进一步写代码获取数据,具体的功能及实现方法我已经写 ...
 - Forward团队-爬虫豆瓣top250项目-模块测试
		
项目托管平台地址:https://github.com/xyhcq/top250 模块测试:爬虫对信息的处理部分 测试方法: 实际运行一下代码: 可以看见,信息都已经爬取出来了 其他补充说明: 原本系 ...
 - Forward团队-爬虫豆瓣top250项目-需求分析
		
一. 需求:1.爬取豆瓣电影top250. 2.获取电影名称,排名,分数,简介,导演,演员. 3.将爬取到的数据保存,以便随时查看. 3.可以将获取到的数据展示给用户. 二. 参考: 豆瓣api参考资 ...
 
随机推荐
- 什么是BOM?,什么是DOM? BOM跟DOM之间的关系
			
什么是BOM? BOM是browser object model的缩写,简称浏览器对象模型.是用来获取或设置浏览器的属性.行为,例如:新建窗口.获取屏幕分辨率.浏览器版本号等. 比如 alert(); ...
 - [java,2017-05-15] 内存回收 (流程、时间、对象、相关算法)
			
内存回收的流程 java的垃圾回收分为三个区域新生代.老年代. 永久代 一个对象实例化时 先去看伊甸园有没有足够的空间:如果有 不进行垃圾回收 ,对象直接在伊甸园存储:如果伊甸园内存已满,会进行一次m ...
 - maven的安装和配置
			
这篇文章主要是对maven安装说明,以便后续翻阅,本人刚接触,请多见谅! 1.maven官网下载:http://maven.apache.org/download.cgi 2.解压到你想要放的路径里, ...
 - lambda表达式,filter,map,reduce,curry,打包与解包和
			
当然是函数式那一套黑魔法啦,且听我细细道来. lambda表达式 也就是匿名函数. 用法:lambda 参数列表 : 返回值 例: +1函数 f=lambda x:x+1 max函数(条件语句的写法如 ...
 - laravel PHPExcel 使用小结
			
最近需求要用到PHPExcel,laravel框架中有相应的组件https://github.com/Maatwebsite/Laravel-Excel,我用的是2.1的(3.0文档不详细而且坑似乎也 ...
 - [Redis]Redis的五种数据类型与键值/服务器相关命令
			
-------------------------------------------------------------------------------------- String(字符串):最 ...
 - pip install 提示代理连接失败原因及解决办法
			
# pip install 提示代理连接失败原因及解决办法 1. 错误提示 在公司电脑上安装Python的虚拟环境时输入命令: pip install virtualenv 系统提示以下异常信息: R ...
 - 我尼玛,二半夜的说中photo.src病毒了。
			
大半夜手机预警,中病毒了,我感觉也没啥东西呀.一个破小网站,别人黑我干啥. 登上服务器去一看,我滴个乖乖,photo.src病毒.服务器里面显示是一个背景桌面应用程序, 打算直接从文件夹删除,但是正在 ...
 - psdTohtml
			
https://github.com/anjorweb/fastHtml fastHtml 一个简单的psd直接导出html的工具 自己工作常用整理 适合单页面且采用DOM结构布局的H5页面,基于Ca ...
 - 用命令生成Webservice  对应的代理类
			
wsdl /language:C# /namespace:Camstar.WebPortal.WebPortlets.Shopfloor.SAP.GreatWall /out:gwSAPService ...