CategoryResourceRepost/极客时间专栏/数据分析实战45讲/加餐/加餐丨在社交网络上刷粉刷量,技术上是如何实现的?.md
louzefeng d3828a7aee mod
2024-07-11 05:50:32 +00:00

134 lines
8.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<audio id="audio" title="加餐丨在社交网络上刷粉刷量,技术上是如何实现的?" controls="" preload="none"><source id="mp3" src="https://static001.geekbang.org/resource/audio/e1/4f/e1700b15db147dd17e02dcbb399fa74f.mp3"></audio>
我们都知道很多社交网络上可以刷粉,也可以刷阅读量,这已经形成了一个“产业链”,我们也经常会看到很多记者报道过这样的灰色产业链。
你也许很好奇,这些技术都是怎么实现的?
首先我梳理了一下整个流程可以分成3个步骤。
<img src="https://static001.geekbang.org/resource/image/53/08/53b4ab2c38f684cb1550f75d2dd89b08.jpg" alt=""><br>
在这个流程里,需要有下面三个准备。
**1. 多个手机号**
尽管早期注册只需要邮箱就可以,但现在账号注册都是需要绑定手机号的,所以手机号是必备的。
**2. 多个IP**
因为很多社交网站都会有反垃圾的措施。共用同一个IP一定会被封号。
**3. 模拟操作**
因为我们的需求是个性化的。所以在这一步,可以封装出一些基本的操作,比如关注、发布动态、转发、阅读文章等。
## 那么多手机号从哪弄?
于是问题来了从哪里弄这么多手机号比如说1万个
**虚拟手机号:被歧视的号码段**
很多从事相关产业的人首先想到的便是虚拟手机号因为虚拟手机号不限数量其他号码段都需要绑定身份证。不过虚拟手机号有个最大的问题就是“会被歧视”。在社交网络里虚拟手机号注册的账号被封的概率远超其他账号比如说以“170”开头的手机号。
**阿里小号:一个看似可行的解决方案**
既然虚拟手机号容易被封那怎样才能找到既不会被封还便宜的号码呢阿里小号是个选择。阿里小号的价格比较亲民5元/月。可以自己选择号码段这些号码段很多都不是170号码段的。但是阿里小号有个问题就是需要用身份证来绑定。
**国外号码,贵但价值明显**
那有没有既不会被封又不用绑定身份证的办法呢国外的手机号是可以的但最大的问题就是贵差不多5美金一个月相当于一个账号就要35元。
我调查了一下其实国外也有类似的刷量刷粉的操作比如刷Facebook、Twitter、YouTube等。这些网站刷粉、刷量的收费更高所以相比之下手机号带来的成本其实不算什么。
一个手机号就相当于你雇了一个工人在雇佣的这段期间里你需要让它的任务“充实”起来。一般的做法都是先从高价值的网站开始刷在完成后再来刷国内的APP。如果有足够多的刷粉刷量的任务这个“工人”就会7X24小时不间断地工作。
这些号码各有特点,根据实际情况,不同人手里用到的号码是不同的。我总结了一下。
<img src="https://static001.geekbang.org/resource/image/3c/01/3c11f84acd2e49ab9ec906d919149001.jpg" alt="">
## 如何自动切换IP
在解决多个手机号的情况后那下个问题就来了如何自动切换IP呢这是一个自动化运营绕不开的问题。
有三种方式可以选择。
<li>
IP代理。
</li>
<li>
飞行模式。
</li>
<li>
小区宽带。
</li>
**IP代理所有人都能想到但并不靠谱的方案**
IP代理应该是很多人首先想到的解决方案因为在编写Python爬虫的时候是可以使用代理机制的。网上就有很多做IP代理的。但这里有两个认知你需要注意。
<li>
IP代理没有你想得那么便宜。以不重复的100万IP 为例单日价格在2700元相当于1万IP=27元。所以你会有这样一个疑惑那些刷网站流量的1万流量只需要几元的是怎么做到的
</li>
<li>
免费IP比你想象得要好用。实际上有很多免费IP代理可以使用它们主要的问题在于数量比较少。
</li>
所以在量少的情况下IP代理是可以使用的。在量大的情况下IP代理就没那么好用了因为成本太高并不是一个靠谱的方案。
**飞行模式一个让人飞起来的idea**
当你发现购买IP代理的价格比淘宝上售卖流量的还要贵的时候你就知道他们用的根本不是IP代理。换个思维有没有免费的IP呢这里会用到手机的飞行模式它和路由器断开重连一样完美
这是为什么呢?
当我们的手机采用飞行模式后再关闭你会发现手机的IP发生了变化。同样当你断开路由器后再进行重连IP也自动发生了变化。这个就是动态IP。
**WIFI和MIFI**
那么问题来了怎样写程序来控制手机呢这里你可以使用MIFI设备MIFI其实就是Mobile WIFI的意思。MIFI设备最大的好处就是脱离了手机你不需要一台手机而只需要一台MIFI设备和一张SIM卡。
MIFI设备集成了路由器和调制解调器的功能使用的流量还是SIM卡的流量。所以当我们断开MIFI设备重连的时候就相当于自动换了IP。当然这个过程需要定制MIFI设备也就是多一个网线接口把数据传输出来这样就可以自动进行控制了。
**MIFI可能存在的问题**
MIFI可以说是个很方便的解决方案但是依然存在一个问题就是当流量大的时候手机的流量费是很高的。那这样的话就不能采用MIFI的方式了可以考虑使用小区宽带。小区宽带最大的好处就是不限流量。
当然除了控制MIFI设备外还需要控制交换器才能做到自动切换IP。所以在流量较小的情况下MIFI是个好的解决方案。流量大的情况比如要访问视频网站小区宽带是更好的方案。
在自由切换IP这个部分我整理了以下的3种方案一般来说手机飞行适合轻度的并发访问而重度的流量访问方式还需要采用小区宽带的方案。
<img src="https://static001.geekbang.org/resource/image/4d/c3/4d2bfea6ed27986abdad60d5f6f507c3.jpg" alt="">
## 如何模拟操作,是一个技术活
模拟操作,就是文章开头中,我提到的流程中的最后一步。
所有的流程如果想要实现机器自动化就需要一个利器。这里Python最适合不过。那么该怎么做呢
首先这里需要用到Python的几个工具。在做自动化运营的过程中会经常使用这些工具我简单给你介绍下。
**Selenium**用于Web测试的工具支持多种浏览器和自动化测试。
**lxml**网页解析利器支持HTML、XML、XPath解析而且解析效率很高。
**Scrapy**:强大的爬虫框架,提升开发效率。
**PhantomJS**基于WebKit的无头浏览器无头就是没有UI界面的意思。同时PhantomJS提供了JavaScript API接口可以直接与WebKit内容交互。通过它你可以完成无界面的自动化测试、网页截屏等。通过网页截屏就可以帮水军做结案报告。通过结案报告就可以看到刷量的直观数据结果。
<img src="https://static001.geekbang.org/resource/image/bf/7f/bf13d87259a86139a1dac9e9946d477f.jpg" alt="">
通过以上的工具,我们就可以达到实时抓取,实时刷量的目的。当然这些工具只是表象,更重要的是模块化的思维。也就是如何使用这些工具,具体都做哪些事。一般来说,我们可以把自动化运营拆解成不同的模块。
下图是我以微信、微博为例,整理的自动化运营所需模块的全景图,这些模块都需要编写相应的代码来实现,从而打造整个社交网络上自动化运营的机器人团队。
<img src="https://static001.geekbang.org/resource/image/55/f1/550a8b3472305a44c9e067db869726f1.jpg" alt="">
虽然这篇文章给你讲了这个灰色地带,但我还是想强调一下,我只想通过这篇文章让你直观地体验数据思维是什么样的以及实现的方式是什么,这样才能更好地帮助你解决工作或者生活中遇到的问题。
作为技术出身的从业人员我倡导不作恶的理念。所以我不建议你去购买这么多的手机号和MIFI设备我希望你把重点放到如何掌握Python中数据分析的工具上以及慢慢培养你的数据化思维。
我是一个数据分析爱好者,总是被各种问题吸引,带着好奇心,脑海中提出各种问题,然后通过思考一步一步进行解决。
所以我希望你能在实际工作中和我一样具有数据思维以及数据分析的解决能力这也是我们在《数据分析实战45讲》这个专栏里想要讨论的内容。
而我也希望你能通过这个专栏获得这样的能力。如果你觉得这篇文章有帮助,欢迎点击“请朋友读”,把它分享给你的朋友或者同事。