Python爬虫教程-爬取猫眼电影
python教程
共 1961字,需浏览 4分钟
·
2021-06-05 11:26
如何学习Python爬虫,爬虫的难点其实并不在于爬虫本身。而是各种各样的反爬虫措施。下面以一个小案例分享一下,带你们领略一下python的魅力。
爬取《悲伤逆流成河》猫眼信息
项目源码分享:
import requests
from fake_useragent import UserAgent
import json
import pymongo
#保存到数据库
clien=pymongo.MongoClient(host='填写数据库IP')
db=clien.The_cat_s_eye_essay
coll=db.eye_essay
#创建一个随机生成user-aengt的对象
ua=UserAgent()
#提取我们要的短评
def parse_json(json):
if json:
items=json.get('cmts')
i=0
for item in items:
data={
'ID':item.get('nickName'),
'短评':item.get('content'),
'评分':item.get('score'),
'用户地点':item.get('cityName'),
'评论时间':item.get('startTime'),
'回复数':item.get('reply'),
'性别':item.get('gender')
}
#coll.insert_one(data)
print(data)
def Crawl_JSON():
ua = UserAgent()
headers={
'User-Agent':ua.random,
'Host':'m.maoyan.com',
'Referer':'http://m.maoyan.com/movie/1217236/comments?_v_=yes'
}
#猫眼电影短评接口
#因为猫眼的数据是AJAX类型的 里面的offset是改变的 第一次是0 第二次15 第三次是30 以此类推 这个page 相当于100/15然后循环
#可以自信观察猫眼AJAX数据请求参数 就会知道了
page=100
u=0
for i in range(page):
try:
offset=u
startTime = '2018-10-11'
comment_api = 'http://m.maoyan.com/mmdb/comments/movie/1217236.json?_v_=yes&offset={0}&startTime={1}%2021%3A09%3A31'.format(offset,startTime)
#发送get请求
response_coment=requests.get(url=comment_api,headers=headers)
json_comment=response_coment.text
json_comments=json.loads(json_comment)
parse_json(json_comments)
u+=15
except Exception as e:
print('出现错误:',e.args)
parse_json(Crawl_JSON())
搜索下方加老师微信
老师微信号:XTUOL1988【切记备注:学习Python】
领取Python web开发,Python爬虫,Python数据分析,人工智能等精品学习课程。带你从零基础系统性的学好Python!
*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权
评论