【Python】微博自动抢红包
# -*- coding: utf-8 -*-
import requests
import js2xml
from lxml import etree
headers = {
# 这边cookie替换成你的cookie
'Cookie':'9b',
'User-Agent': 'Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19',
}
# 获取红包列表 def getuid():
url = 'http://chunjie.hongbao.weibo.com/hongbao2017/h5index'
# 带上request headers
z = requests.get(url, headers=headers)
#print(z.status_code)
if z.status_code == 200:
# 这边是查找所有的ouid
alluid = etree.HTML(z.content).xpath('//div[@class="m-auto-box"]/@action-data')
#print(alluid)
#print(etree.HTML(z.content).xpath('/html/body/div[1]/section/div[2]/span'))
return alluid def getname(url):
#url = 'http://hongbao.weibo.com/h5/aboutyou?groupid=1000110'
# 带上request headers
z = requests.get(url, headers=headers)
#print(z.status_code)
if z.status_code == 200:
# 这边是查找所有的ouid
name=etree.HTML(z.content).xpath('//span[@class="nickname"]')
print(name[0].text)
return name # 获取st的值 def getst(url):
# 带上request headers
z = requests.get(url, headers=headers)
# 获取第一段JavaScript,并去掉 <!--拆包页-->,防止中文报错
jscode = etree.HTML(z.content).xpath(
"//script[contains(., 'weibo')]/text()")[0].replace(u'<!--拆包页-->', '')
# 使用js2xml 把JavaScript代码替换成xml
parsed_js = js2xml.parse(jscode)
# 打印下 xml
# print js2xml.pretty_print(parsed_js) # 从上面可以看到st在哪,然后用xpath写出来
st = parsed_js.xpath('//property[@name="st"]/string/text()')[0]
return st
# 抢红包 def tj(url, uid, st, tjheaders):
# 生成需要发送的data
data = {
'groupid': '1000110',
'uid': uid,
'share': '1',
'st': st
}
# 这里使用了post,headers增加了Referer
z = requests.post(url, data=data, headers=tjheaders)
#print(z.json())
# 把得到的结果以json形式展示
_ = z.json()
# 如果json中有“ok”,表示提交成功了,否则返回报错信息
#print(_['ok'])
#if _['ok']!=1:
#print(_)
print (_['data']['result']['name'])
# else:
#print (_['error_code'])
if __name__ == '__main__':
# 得到所有的uid
uids = getuid()
# 获取st
#print(st)
url = 'http://hongbao.weibo.com/h5/aboutyou?groupid=1000110'
getname(url)
st = getst(url)
for uid in uids:
#print(uid)
# 生成红包页面的url
url = 'http://hongbao.weibo.com/h5/aboutyou?groupid=1000110&ouid=%s' %uid # 生成点击“抢红包”页面的url
tjurl = 'http://hongbao.weibo.com/aj_h5/lottery?uid=%s&groupid=1000110&wm=' %uid
getname(url)
# 添加Referer,如果不添加会报错
headers['Referer'] = url
tjheaders = headers
try:
# 点击“抢红包”
tj(tjurl,uid,st,tjheaders)
except:
pass
【Python】微博自动抢红包的更多相关文章
- Python自动抢红包,超详细教程,再也不会错过微信红包了!
目录: 0 引言 1 环境 2 需求分析 3 前置准备 4 抢红包流程回顾 5 代码梳理 6 后记 0 引言 提到抢红包,就不得不提Xposed框架,它简直是个抢红包的神器,但使用Xposed框架有一 ...
- 一步一步实现iOS微信自动抢红包
微信红包 前言:最近笔者在研究iOS逆向工程,顺便拿微信来练手,在非越狱手机上实现了微信自动抢红包的功能. 此教程所需要的工具/文件 yololib class-dump dumpdecrypte ...
- 被「李笑来老师」拉黑之「JavaScript微博自动转发的脚本」
故事的背景如下图,李笑来 老师于10月19日在 知乎Live 开设 一小时建立终生受用的阅读操作系统 的讲座,他老人家看到大家伙报名踊跃,便在微博上发起了一个 猜数量赢取iPhone7 的活动. 因为 ...
- iOS微信自动抢红包插件(支持后台和锁屏下抢红包)
前言:本文主要讲述使用hook方式实现红包插件,涉及到tweak相关知识,如果你不想了解具体实现细节可直接到我的Github地址参考安装(包含越狱和非越狱两种方法) 转眼间2017即将过去,又到了 ...
- 如何手动写一个Python脚本自动爬取Bilibili小视频
如何手动写一个Python脚本自动爬取Bilibili小视频 国庆结束之余,某个不务正业的码农不好好干活,在B站瞎逛着,毕竟国庆嘛,还让不让人休息了诶-- 我身边的很多小伙伴们在朋友圈里面晒着出去游玩 ...
- 使用Sphinx为你的python模块自动生成文档
Sphinx是一个可以用于Python的自动文档生成工具,可以自动的把docstring转换为文档,并支持多种输出格式包括html,latex,pdf等. 安装 创建一个sphinx项目 下面的命令会 ...
- Python 之自动获取公网IP
Python 之自动获取公网IP 2017年9月30日 文档下载:https://wenku.baidu.com/view/ff40aef7f021dd36a32d7375a417866fb84ac0 ...
- 微信自动抢红包android实现
AccessibilityService-微信自动抢红包 2018年02月01日 16:09:06 阅读数:1757 在领导发红包的时候,看到有些同事在1s.2s抢到红包,为什么他们能够这么快?一定是 ...
- 用python实现自动玩21点小游戏
1. 背景 前段时间发现一个论坛上(https://npupt.com/blackjack.php)有21点小游戏. 这个21点小游戏的规则是每个人开局都会获得随机点数,如果觉得点数小,可以继续摸牌. ...
随机推荐
- 转:mvc 当中 [ValidateAntiForgeryToken] 的作用
一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSR ...
- 【IL】IL入门
1.IL基本介绍 1.1 CLR介绍 在介绍IL之前,先说一说CLR.CLR的全称Commen Language Runtime 公共语言运行时.因为CLR的存在,使得多语言开发成为可能.下面给出一张 ...
- 【Java】解析Java对XML的操作
目录结构: contents structure [+] 什么是XML 解析XML 使用DOM解析 使用SAX解析 使用PULL解析 使用dom4j解析xml dom4j的部分API 打印一个XML文 ...
- Linux日期时间显示输出
1.输出当前年月日 echo $(date +%F) 2014-02-21 2.输出当前时间(时分) echo $(date +%R) 12:45 3.输出当前时间(时分秒) echo $(date ...
- OpenCV 学习笔记03 drawContours函数
opencv-python 4.0.1 轮廓的绘制或填充. cv2.drawContours(image, contours, contourIdx, color[, thickness[, li ...
- Oracle 12C -- native left outer join的加强
在11g中SQL> select count(*) 2 from emp a, dept b, bonus c 3 where a.deptno(+) = b.deptno 4 ...
- Linux共享内存使用常见陷阱与分析
所谓共享内存就是使得多个进程可以访问同一块内存空间,是最快的可用IPC形式.是针对其他通信机制运行效率较低而设计的.往往与其它通信机制,如 信号量结合使用,来达到进程间的同步及互斥.其他进程能把同一段 ...
- sql改写or 改成union不等价数据变多
select count(*) from (SELECT A.* FROM (SELECT CD.*, nvl(CV.SUM_CI_BALANCE, 0) as SUM_CI_BALANCE, nvl ...
- df -h和du -sh显示结果不一样的原因及解决
一.背景:一台2T硬盘的mysql服务器,保存电话的CDR信息.按照历史数据的水平,一个月能生成20+GB的文件.然而短短的半年时间,满了?! 登录服务器看谁占了这么大的空间?好吧,slow-quer ...
- 转 HystrixDashboard服务监控、Turbine聚合监控
SpringCloud系列七:Hystrix 熔断机制(Hystrix基本配置.服务降级.HystrixDashboard服务监控.Turbine聚合监控) 1.概念:Hystrix 熔断机制 2.具 ...