爬虫实例之豆瓣高分电影
学了python这么久,终于写了一个小爬虫,虽然很简单,但是总算动手了。
这个爬虫小程序爬取了豆瓣高分榜前100的电影名,所用到的知识也十分简单。
以下是源码
import re import requests import string class spider:def init(self):self.page = 0self.top_num = 1self.cur_url = "https://movie.douban.com/top250?start={page}&filter="self.datas = []#print("it's init!")def downloader(self,cur_page):try :my_page = requests.get(self.cur_url.format(page=cur_page * 25)).textexcept requests.urllib.error.URLError as e:if hasattr(e, "code"):print("The server couldn't fulfill the request.")print("Error code: %s" % e.code)elif hasattr(e, "reason"):print("We failed to reach a server. Please check your url and read the Reason")print("Reason: %s" % e.reason)#print("this is downloader!")return my_pagedef parser(self,Page):pat = re.compile(r'<span.*?class="title">(.*?)</span>')#返回一个列表title = pat.findall(Page,re.S) for index,item in enumerate(title):if item.find(" ") == -1:self.datas.append("Top"+str(self.top_num)+" "+item)#print(item)self.top_num += 1#print("this is parser")def spider_main(self):self.init()while self.page < 4:Page = self.downloader(self.page)self.parser(Page)self.page +=1def main():print("开始爬虫")my_spider = spider()my_spider.spider_main()for item in my_spider.datas:print(item)print("爬虫结束")if __name__ == '__main__':main()
之前学习了Python的基本数据结构,但是在用到时才发现学的比较零散,用的时候不知道该怎么用,还是需要更多的项目来练习。
在这个简单的项目中,也出现了一些小问题:
- 对于url的产生 没有理解到位,在网页下载器中,会有一个需要下载页面的url,而在这里,这个url是由初始url和一个page参数组成。因此,在下载器中应该传入一个page参数。
- 对于类中变量的是不是需要self这个关键字没有搞清楚,导致在使用这些变量时处于一种“不清不楚”的状态。
- 对于字符串的操作还不熟悉,需要练习
总之啊,路还长
转载于:https://www.cnblogs.com/HJhj/p/7657780.html
爬虫实例之豆瓣高分电影相关推荐
- python爬虫爬取豆瓣top250电影影评
信息系统课程项目,小组准备做一个电影推荐系统,自己选了觉得很有趣的资源模块,需要获取电影的评价资源等信息.花了大约一周看Web Scraping with Python这本书,对爬虫有了大体但是初略的 ...
- python爬虫——爬取豆瓣TOP250电影
相信很多朋友在看一部电影的时候喜欢先去豆瓣找一下网友对该片的评价.豆瓣作为国内最权威的电影评分网站,虽然有不少水军和精日精美分子,但是TOP250的电影还是不错的,值得一看. 爬取目标 本文将爬取豆瓣 ...
- python爬虫——爬取豆瓣热门电影海报生成html文件
环境 webbrowser urllib requests v2.21.0 实现功能 过程 1.查看豆瓣热门电影模块源码: 看到其所在class为list-wp,我们想通过urllib里面的reque ...
- python爬电影排名用os bs4_Pyhton网络爬虫实例_豆瓣电影排行榜_BeautifulSoup4方法爬取...
-----------------------------------------------------------学无止境------------------------------------- ...
- 爬虫实例之豆瓣电影排行榜
from bs4 import BeautifulSoup from lxml import html import xml import requests#不加头部直接爬取的话,返回值为空 head ...
- python爬虫--爬取豆瓣top250电影名
关于模拟浏览器登录的header,可以在相应网站按F12调取出编辑器,点击netwook,如下: 以便于不会被网站反爬虫拒绝. 1 import requests 2 from bs4 import ...
- python爬取电影评分_Python爬取豆瓣高分电影前250名
import requests import pymysql import time import re import xlwt from lxml import etree headers = {' ...
- Python爬虫项目-豆瓣网电影排名TOP250
开发背景:该项目是给电影爱好者提供的,利用爬虫爬取豆瓣网上电影榜排名TOP250的电影,然后选取自己最喜欢的电影看,有电影名称,电影链接,导演,演员,以及有多少人观看并评分 功能介绍:实时爬取豆瓣网上 ...
- python爬虫练习(豆瓣电影)
任务:爬取豆瓣高分电影信息 import requests from bs4 import BeautifulSoup import pprint import json #构造分页数字列表 page ...
- 数据分析(一)豆瓣华语电影分析
在之前,我们已经用通过爬虫获取了豆瓣华语电影共33133部电影的数据,具体爬虫介绍请见之前的博文,爬虫实战(一)利用scrapy爬取豆瓣华语电影.本文对爬虫过程进行简要概述后,对这部分数据进行分析. ...
最新文章
- 持续集成之路——Maven
- 1.4 获取字符串长度(length())
- 37-Invert Binary Tree
- python字符串可以保存在变量中吗_在python中可以从字符串变量实例化类吗?
- iOS-UICollectionView快速构造/拖拽重排/轮播实现
- 华为机试HJ46:截取字符串
- MFC位图读取操作步骤记录
- amd服务器开启虚拟化技术,在AMD平台上实现KVM虚拟化技术
- 全职高手24职业及技能(Full time master)
- 在Android上加载具有AI危害检测的TensorFlow模型
- 服务器插sata硬盘启动不了怎么办,双SATA硬盘启动无法进入系统故障解决办法
- 大数据血缘分析系统设计
- c语言void* arg,void * arg什么意思
- 注册登录页面模板 农业集团 金星农业
- 常用的推挽输出、开漏输出、上拉输入
- 威联通NAS安装openwrt旁路由
- C Primer Plus 第六版---编程练习2
- 个人作业2---必应词典案例分析
- SSD-Tensorflow 512x512 训练配置
- 泊松分布的矩母函数与特征函数