Python爬虫项目实战-爬取猫眼电影
Posted xiaoyiq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python爬虫项目实战-爬取猫眼电影相关的知识,希望对你有一定的参考价值。
如何学习Python爬虫,爬虫的难点其实并不在于爬虫本身。而是各种各样的反爬虫措施。下面以一个小案例分享一下,带你们领略一下python的魅力。
如何学习Python爬虫,爬虫的难点其实并不在于爬虫本身。而是各种各样的反爬虫措施。下面以一个小案例分享一下,带你们领略一下python的魅力。
如何学习Python爬虫,爬虫的难点其实并不在于爬虫本身。而是各种各样的反爬虫措施。下面以一个小案例分享一下,带你们领略一下python的魅力。
爬取《悲伤逆流成河》猫眼信息,项目源码分享:
1 ‘‘‘ 2 在学习过程中有什么不懂得可以加我的 3 python学习交流扣扣qun,934109170 4 群里有不错的学习教程、开发工具与电子书籍。 5 与你分享python企业当下人才需求及怎么从零基础学习好python,和学习什么内容。 6 ‘‘‘ 7 import requests 8 from fake_useragent import UserAgent 9 import json 10 import pymongo 11 12 #保存到数据库 13 clien=pymongo.MongoClient(host=‘填写数据库IP‘) 14 db=clien.The_cat_s_eye_essay 15 coll=db.eye_essay 16 17 #创建一个随机生成user-aengt的对象 18 ua=UserAgent() 19 20 #提取我们要的短评 21 def parse_json(json): 22 if json: 23 items=json.get(‘cmts‘) 24 i=0 25 for item in items: 26 data= 27 ‘ID‘:item.get(‘nickName‘), 28 ‘短评‘:item.get(‘content‘), 29 ‘评分‘:item.get(‘score‘), 30 ‘用户地点‘:item.get(‘cityName‘), 31 ‘评论时间‘:item.get(‘startTime‘), 32 ‘回复数‘:item.get(‘reply‘), 33 ‘性别‘:item.get(‘gender‘) 34 35 #coll.insert_one(data) 36 print(data) 37 38 39 40 41 def Crawl_JSON(): 42 ua = UserAgent() 43 headers= 44 ‘User-Agent‘:ua.random, 45 ‘Host‘:‘m.maoyan.com‘, 46 ‘Referer‘:‘http://m.maoyan.com/movie/1217236/comments?_v_=yes‘ 47 48 49 #猫眼电影短评接口 50 #因为猫眼的数据是AJAX类型的 里面的offset是改变的 第一次是0 第二次15 第三次是30 以此类推 这个page 相当于100/15然后循环 51 #可以自信观察猫眼AJAX数据请求参数 就会知道了 52 page=100 53 u=0 54 for i in range(page): 55 try: 56 offset=u 57 startTime = ‘2018-10-11‘ 58 comment_api = ‘http://m.maoyan.com/mmdb/comments/movie/1217236.json?_v_=yes&offset=0&startTime=1%2021%3A09%3A31‘.format(offset,startTime) 59 #发送get请求 60 response_coment=requests.get(url=comment_api,headers=headers) 61 json_comment=response_coment.text 62 json_comments=json.loads(json_comment) 63 parse_json(json_comments) 64 u+=15 65 except Exception as e: 66 print(‘出现错误:‘,e.args) 67 68 69 70 parse_json(Crawl_JSON())
以上是关于Python爬虫项目实战-爬取猫眼电影的主要内容,如果未能解决你的问题,请参考以下文章
Python爬虫应用实战案例-pyquery在爬虫中的应用,爬取猫眼电影数据
Python爬虫编程思想(37):项目实战:抓取猫眼电影Top100榜单