因为百度异地登陆有诸多限制,所以使用了cookie登录,实现一键签到所有关注贴吧,效果如下图

签到截图.jpg (88.2 KB, 下载次数: 0)

2019-1-21 12:36 上传

python3 使用到的第三方库 有 requests ,bs4

只需要输入自己的cookie值就可以使用,挂在自己的服务器上,每天自动签到美滋滋,

cookie有效期很久,我自己的已经使用了四十多天了,依然有效

# -*- coding:utf-8 -*-

import requests,datetime,re,os,sys,time

from bs4 import BeautifulSoup

def match_bar_name(soup):

'''

获取 #### 当前页 ### 关注贴吧名字 和 链接,返回列表数据,格式[{'name':'abc','link':'www.asdfaf.asdfasdf'},'name':'abc','link':'www.asdfaf.asdfasdf'}],

这里关注的贴吧名字隐藏在了html中,无法直接访问获取json返回值,用到了bs4处理网页数据

'''

list=[]

for i in soup.find_all('a'):

if i.has_attr('href') and not i.has_attr('class') and i.has_attr('title'):

if i.string != 'lua':

list.append({'name':i.string,'link':'http://tieba.baidu.com/'+i.get('href')})

return list

# url='http://tieba.baidu.com/f/like/mylike?v=%d'%int(float(time.time())*1000)

def get_bar_link():

'''

获取 ##### 所有页 ####关注贴吧 名字 和 链接,遍历所有页,直到最后一页

'''

url=r'http://tieba.baidu.com/f/like/mylike?pn=%d'

pg=1

l = []

while 1:

res=s.get(url%pg,headers=headers)

soup=BeautifulSoup(res.text,'html.parser')

l.extend(match_bar_name(soup))

if '下一页' in str(soup):

pg+=1

else:

return l

def check(name,link):

'''

name: 贴吧名字

link:贴吧链接

利用正则表达式 获取每个关注贴吧 提交数据tbs

然后签到,并返回签到结果

'''

try:

res=s.get(link)

tbs=re.compile('\'tbs\': "(.*?)"')

find_tbs=re.findall(tbs,res.text)

if not find_tbs: ###### 没有查找到tbs 跳过这个吧的签到 ##################

return -1

data={

'ie':'utf-8',

'kw':name,

'tbs':find_tbs[0],

}

url='http://tieba.baidu.com/sign/add'

res=s.post(url,data=data,headers=headers) ######## 签到 post

print(datetime.datetime.now(),' ',name,' ',res.json())

return int(res.json()['no']) #########返回提交结果

except:

return -1

s=requests.session()

cookie='BAIDUID=A3043B35EDF6***********************************47991882' #########类似于这样的一段代码########### 浏览器提取 ########等会附上提取教程

headers={

'Cookie':cookie,

'Upgrade-Insecure-Requests':'1',

'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',

}

for i in get_bar_link():

'''

根据签到的返回值 处理结果

'''

try:

res=check(i['name'], i['link'])

if res==0:

with open(os.path.join(sys.path[0], '1.log'), 'a+') as f: ###############这边使用sys.path 是为了在linux 后台启动时识别路径 ################

f.write(str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) + ' ' + i['name'] + ' 签到成功\n')

elif res==1101:

with open(os.path.join(sys.path[0], '1.log'), 'a+') as f:

f.write(str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) + ' ' + i['name'] + ' 亲,你之前已经签过到了\n')

elif res==1102:

with open(os.path.join(sys.path[0], '1.log'), 'a+') as f:

f.write(str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')) + ' ' + i['name'] + ' 签到太快,重新签到本吧\n')

time.sleep(10)

check(i['name'], i['link'])

else:

print('未知返回值,重新签到本吧')

check(i['name'], i['link'])

time.sleep(2) ########防止签到太快

except :

print('未知报错 重新签到本吧')

check(i['name'], i['link'])

'''

附上 3种 签到返回json

签到太快 {'no': 1102, 'error': '您签得太快了 ,先看看贴子再来签吧:)', 'data': ''}

已经签过到 {'no': 1101, 'error': '亲,你之前已经签过了', 'data': ''}

成功签到的 {'no': 0, 'error': '', 'data': {'errno': 0, 'errmsg': 'success', 'sign_version': 2, 'is_block': 0, 'finfo': {'forum_info': {'forum_id': 548717, 'forum_name': 'katana'}, 'current_rank_info': {'sign_count': 966}}, 'uinfo': {'user_id': 774850436, 'is_sign_in': 1, 'user_sign_rank': 966, 'sign_time': 1548040220, 'cont_sign_num': 1, 'total_sign_num': 1, 'cout_total_sing_num': 1, 'hun_sign_num': 0, 'total_resign_num': 0, 'is_org_name': 0}}}

'''

python3贴吧_python3 百度贴吧 自动签到相关推荐

  1. Github Actions - 实现百度贴吧自动签到

    声明:本文章参考 ghosx 的 tieba 代码仓库. 希望我的文章能给你带来帮助. 欢迎访问我的个人博客:codeupbetter.com,学习各种好玩的知识. 文章首更于个人博客,个人博客的排版 ...

  2. nodejs 版利用 github actions 进行百度贴吧自动签到

    nodejs + github actions 实现百度贴吧自动签到 前段时间想用云函数的方式进行百度贴吧的签到,无奈云函数的超时时间最多只能为60秒,还没开始签就结束了,所以就改用了 github ...

  3. 百度贴吧自动签到脚本 python3

    52上看到有人分享的,代码逻辑实在不敢恭维,做了一些逻辑功能方面的更改,添加了一些注释,代码直接贴下面了: # -*- coding:utf-8 -*- import requests,datetim ...

  4. python+selenium百度贴吧自动签到

    #-*- coding:utf-8 -*- from selenium import webdriver import time import os import random from seleni ...

  5. python之百度贴吧自动签到

    # -*- coding: utf-8 -*- '''#百度错误代码: err_code:40 请输入验证码完成发帖 ''' import urllib,urllib2,cookielib,re; i ...

  6. Docker搭建百度贴吧自动签到(Tieba-Cloud-Sign)

    本文同步发布于个人博客 项目地址 MoeNetwork/Tieba-Cloud-Sign 在服务器上配置好就无需进行任何操作便可以实现贴吧的全自动签到.配合插件使用还可实现云灌水.点赞.封禁.删帖.审 ...

  7. 云服务器搭建百度贴吧自动签到(贴吧云签到)较详细教程

    获取云服务器 可以从我的上一个博客(点击查看)获取教程,本篇使用的是宝塔面板(centos7.7),但即使不用宝塔面板搭建也大同小异. 准备 自己配置好LNMP环境. 选择的项目是GitHub上的一个 ...

  8. 账号升级攻略:每天自动升级b站和网易云音乐,自动签到天翼云盘和百度贴吧...

    苏生不惑第257 篇原创文章,将本公众号设为星标,第一时间看最新文章. 之前分享过5分钟搞定b站答题成为正式会员,每天自动刷经验值升级账号,不过那个GitHub仓库已经被删了,作者提供了本地版本和腾讯 ...

  9. python3.7游戏_python3.7自动点击脚本点击游戏窗口内游戏道具不生效

    我用python3.7的pyautogui编写了一个自动点击的脚本,准备用于点击游戏中的两个道具和一个按钮进行物品合成. 脚本能编写完成后,在桌面进行测试,能开关文件夹. 打开游戏后,发现点击脚本正常 ...

  10. Python3实现某网站自动签到并且发短信到手机

    本文原创作者: Lhaihai 原创投稿详情:重金悬赏 | 合天原创投稿等你来! 0x00 前言 这几天学了学python爬虫,就想用python实现一下自动签到领取积分,毕竟我比较懒,能不动手就让代 ...

最新文章

  1. python字典删除元素_Python简单遍历字典及删除元素的方法
  2. 公众号滑动图代码_如何实现微信公众号文章“滑动查看更多”
  3. Appium+PythonUI自动化测试之uiautomatorviewer和Inspector元素定位
  4. 计算机课设容易挂吗,数学差的学生避开这4大专业,挂科是常态,每年都有学生不能毕业...
  5. unity2D人物和物体的碰撞设置
  6. Java版 微信红包算法
  7. 推测用户行为 程序员分享Android开发经验
  8. Ubuntu 14.04 执行指定用户的命令
  9. [bigdata-093] drool 规则引擎安装和试用(不全)
  10. 网页悬浮按钮php,Javascript实现带关闭按钮的网页漂浮广告代码_javascript技巧
  11. 字节跳动“蚕食”B端,搅局企业服务?
  12. 机器人协同工作,RobotArt是怎么做到的呢?
  13. edg驱动 wobot通过ttyUSB0串口通信
  14. Window10总是自动打开网络代理的解决方案法
  15. 利用计算机程序快速得到9*9大小数独的解法
  16. 图像可视化——matplotlib绘图入门基础
  17. 桥接PyTorch和TVM
  18. java 转换html标签,java转化html标签
  19. 体育视野杂志体育视野杂志社体育视野编辑部2022年第5期目录
  20. 职场中的服务 —— 满足心理诉求

热门文章

  1. 纳米软件案例之陶瓷样品测试系统,原位观察力学测试纳米压痕仪-扫描电子显微镜SEM联用...
  2. 读书APP的不二备胎,我选了网易蜗牛读书
  3. OneTool多平台助手程序网页源码全解版
  4. 手写NMS和魔改(Pytorch版本)
  5. ①万字《详解canvas api画图》小白前端入门教程(建议收藏)
  6. 公众号滑动图代码_微信公众号的代码块插入,及一键排版
  7. R语言进行的变量相关性显著性检验
  8. python 教程(转载)
  9. js判断数组中是否包含某个元素
  10. 凯恩帝k1000ti参数设置_凯恩帝数控怎么修改参数