爬虫学习---基础操作--抽屉新热榜自动点赞与豆瓣自动统一短评
爬虫的学习相对来说,比较烦锁,因为网站的反爬规则,经过两天的研究,终于搞定了抽屉新热榜自动点赞与豆瓣自动统一短评(豆瓣登录的验证码目前需要手动输入)
抽屉网的规则问题
示例如下:
1 import requests,re 2 from bs4 import BeautifulSoup 3 headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0' 4 } 5 user='你的帐号' 6 pwd='你的密码' 7 def index_first():#抽屉网需要GET的COOKIES 8 r1=requests.get('https://dig.chouti.com/',headers=headers) 9 return r1.cookies.get_dict() 10 def login(cookies,user,pwd): 11 post_dict={ #登陆时要提交的数据 12 'phone':user, 13 'password':pwd, 14 'oneMonth':1 15 } 16 response = requests.post(#要登陆的网址 17 url="https://dig.chouti.com/login", 18 data=post_dict, 19 cookies=cookies,#带上cookies进行授权 20 headers=headers 21 ) 22 print(response.text,'url') 23 return 24 25 def profiles(cookie_gpsd):#进入个人主页 26 response=requests.get( 27 url='https://dig.chouti.com/profile/bind', 28 cookies=cookie_gpsd, 29 headers=headers 30 ) 31 soup =BeautifulSoup(response.text,features='html.parser')#python 内置转换的对象 32 phone=soup.find(id='bind-content') 33 #phone_nube=phone.find('class') 34 reg=r'<div class="show-phoneCode">当前绑定号码为:(.*?)</div>' 35 rest=re.findall(reg,response.text)#查找 36 print('',rest) 37 if rest[0]=='+你的手机号': 38 print('进入个人设置成功') 39 40 def dz(cookies_dict): 41 ret=requests.post(url='https://dig.chouti.com/link/vote?linksId=18760066',#要点赞的文章地址 42 cookies=cookies_dict, 43 headers=headers) 44 print(ret.text) 45 46 47 cookie_get=index_first()#先取得GET的cookies 48 login(cookie_get,user,pwd)#登陆进行cookies的授权 49 profiles(cookie_get)#可以进行后台 50 dz(cookie_get)#点赞
豆瓣网
1 import requests 2 import re 3 import json 4 from bs4 import BeautifulSoup 5 6 requests =requests.Session()#记录登录的状态 7 if __name__ == '__main__': 8 user='你的帐号' 9 pwd='你的密码' 10 #请求头 11 headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0' 12 } 13 14 def login(): 15 response=requests.get('https://accounts.douban.com/login',headers=headers) 16 response.encoding=response.apparent_encoding #返回网页的原先编码 17 result=response.text#取出文本即网页源码 18 reg=r'<input type="hidden" name="captcha-id" value="(.*?)"/>'#正则表达式 19 catpchaId=re.findall(reg,result)#查找 验证码对象ID 20 soup =BeautifulSoup(result,features='html.parser')#python 内置转换的对象 21 target=soup.find(id='captcha_image')#查找 验证码对象 22 img_url =target.attrs.get('src')#获取验证码图片URL 23 print(img_url,catpchaId) 24 response=requests.get(img_url,headers=headers)#获取验证码图片 25 codeimg=response.content#保存为二进制 26 print(codeimg,'codeimg') 27 with open('code.png','wb') as f:#保存为PNG图片 28 f.write(codeimg) 29 post_dict={ #登陆时要提交的数据 30 'source':'index_nav', 31 'form_email':user,#用户名 32 'form_password':pwd,#密码 33 'captcha-solution':input('请输入验证码:'),#输入你保存的PNG图片中的验证码 34 'captcha-id':catpchaId 35 } 36 response = requests.post(#要登陆的网址 37 url="https://accounts.douban.com/login", 38 data=post_dict, 39 headers=headers 40 ) 41 print(response.url,'url') 42 # #print(response.text,'text') 43 # cookie_dict=response.cookies.get_dict()#产生的cookie 44 # print(cookie_dict,'cookie_dict') 45 if '莫柔落切的帐号' in response.text: 46 print('登录成功') 47 else: 48 print('登录失败,重新登录!') 49 login() 50 return 51 def comment(mid):#评论 52 data={#评论的表单数据格式 53 'ck':'xVds', 54 'comment':'我来留个名', 55 'foldcollect':'F', 56 'interest':'collect', 57 'rating':'', 58 'tags':'123' 59 } 60 #进行提交 61 response=requests.post('https://movie.douban.com/j/subject/%s/interest'%mid,data=data,headers=headers) 62 print(response.text,'comment.text') 63 def getMoveId():#电影的ID 排行榜 64 response=requests.get('https://movie.douban.com/ithil_j/activity/movie_annual2017/widget/20', 65 headers=headers) 66 print(response.text) 67 result=response.json()#进行转换为文本 68 69 print(type(result),'类型') 70 return result['res']['subjects']#返回所要的数据 71 72 login() 73 for i in getMoveId():#循环电影ID列表 74 print(i) 75 comment(i['id'])#进行短评
转载于:https://www.cnblogs.com/uge3/p/8809044.html
爬虫学习---基础操作--抽屉新热榜自动点赞与豆瓣自动统一短评相关推荐
- Python爬虫学习基础——5分钟学会爬取B站视频日播放量排行
Python爬虫学习基础--5分钟学会爬取B站视频日播放量排行 基础包含 requests pyquery 进入正题 基础包含 这也是我当初第一次学习爬虫时做的练习,感觉给初学者练笔挺不错的.运用的知 ...
- Socket编程学习-基础操作
Socket编程学习-基础操作 socket的基本操作 可参考,https://blog.csdn.net/sinat_36645384/article/details/79128137 核心问题1- ...
- 基于python win32com的visio文件基础操作语句简介及案例展示(家族树自动创建)
1 写在前面 最近需要给老师们做家族树,向visio模板中套excel数据,但是在手动套模板的过程中发现间距的控制是一个较为繁琐的事情,于是萌生了用python完成这一过程的想法. 在探索的过程中经验 ...
- 水箱建模最小二乘法_lammps软件学习基础操作建模
内部建模,即使用LAMMPS提供的命令建立模型.这种方法主要用于构建比较简单和标准的体系. 相关命令主要有4个: lattice:定义晶格类型: region:定义模拟盒子的大小: create_bo ...
- python爬虫学习基础教程,批量抓取美女图片!
python的抓取功能其实是非常强大的,当然不能浪费,呵呵.下面就与大家分享一个python写的美女图自动抓取程序吧! 其中用到urllib2模块和正则表达式模块.下面直接上代码: 用python批量 ...
- python数据分析pandas_Python数据分析之pandas学习(基础操作)
一.pandas数据结构介绍 在pandas中有两类非常重要的数据结构,即序列Series和数据框DataFrame.Series类似于numpy中的一维数组, 除了通吃一维数组可用的函数或方法,而且 ...
- 全网首发 自媒体人的秘密武器——即时热榜上线
在自媒体行业高温不减的当下,热点就是流量.效率就是金钱,如果你真的想要做好自媒体,那么,即时热榜--这个追热点的绝密武器,你必须要知道. 第一,聚合100+平台.1000+热门榜单 作为一个聚合类资讯 ...
- NLP 实战 (7) | 热榜算法更新
更新日志 2022/09/15 热榜 v3.7.3.8 上线: 增加文章因为分享带来的站外访客因子: 加入新增的前沿技术相关标签,并设置权重. 贡献者:@卢昕 2022/09/08 热榜 v3.7.3 ...
- 太好玩了,爬虫、部署API、加小程序,一条龙玩转知乎热榜!
作者 | 周萝卜 来源 | 萝卜大杂烩 一直想做一个从爬虫到数据处理,到API部署,再到小程序展示的一条龙项目,最近抽了些时间,实现了一个关于知乎热榜的,今天就来分享一下! 数据爬取 首先我们看下需要 ...
- 用PyTorch实现的李沐《动手学深度学习》,登上GitHub热榜,获得700+星
晓查 发自 凹非寺 量子位 报道 | 公众号 QbitAI 李沐老师的<动手学深度学习>是一本入门深度学习的优秀教材,也是各大在线书店的计算机类畅销书. 作为MXNet的作者之一,李沐老 ...
最新文章
- Git复习(五)之多人协作、git push失败、git pull失败
- 直播 | 华为云卢栋才:对话机器人的应用实践和最新进展
- ava返回json格式的状态码数据(一)
- SAP UI5 Mock server,为什么运行时无法返回 JSON 类型的测试数据?
- java mysql 数据库
- 【qt】QT 的信号与槽机制
- oracle中DECODE与CASE的用法区别
- java图形用户登录界面_Java简单登录图形界面
- 关于推荐的一个算法工程师访谈,有一些内容值得看看
- JavaScriptCore全面解析
- python类的初始化方法___python类的初始化方法
- Mac远程服务器文件上传rz和sz的安装使用
- Windows下Github使用方法
- signature=d66576fde8d472a0c1dddd8b37be6b72,Signature process
- XnConvert for Mac(批量图像格式转换软件)
- maven本地仓库地址更改
- 计算机网络技术实训课程报告,大学网络技术基础课程的实训报告怎么写?
- 程序员有话说 | 我成了敲代码的“佛教徒”
- KKB:二进制知识:15瓶水,其中只有一瓶水有毒,请问至少需要几只小白鼠可以一次性喝出来?
- html多个背景音乐自动播放,多个背景音乐同时自动播放?
热门文章
- Unity 增加2D游戏的打击感笔记
- web安全主要包括哪些方面的安全
- Android DRM
- 计算机6005是开机时间,怎么查电脑的开机,和关机时间·,同学们
- 31.Silverlight中WebClient+StreamResourceInfo+反射实现动态加载外部XAP程序
- SG Input 软件安全分析之逆向分析
- prophet Seasonality, Holiday Effects, And Regressors季节性,假日效应和回归
- 计算机分析桁架受力,日光温室桁架式拱架的受力分析.doc
- Mac技巧之 Numbers 排除重复表格(去重)方法
- Eureka的自我保护机制