爬取成人网站 8 千万用户数据,就这么简单?

TTTEED

共 1613字,需浏览 4分钟

 · 2020-12-18





事先申明:工作需要,工作需要,工作需要!


成人网站纯属巧合!



背景说明




这个网站叫做 OnlyFans,先看下维基百科对其介绍:


OnlyFans是一个总部位于英国伦敦的社会化媒体,创作者创建一个付费订阅内容服务,与其订阅者,或称为“粉丝”进行交互,创建关系。Onlyfans在成人产业中相当受欢迎,此外亦有其它产业如健身使用此平台。创作者每月能从订阅者中直接获得收入,此外创作者亦能获得小费和按次付费观看获得收入。


纽约时报评论认为OnlyFans改变了成人产业,演出者拿回主导权,透过自己的作品直接获得收入


简单些说,OnlyFans 可以看做明星的付费朋友圈,通过付费观看其视频、照片等。这里的明星通常没有那么大腕,但也都拥有较高流量并需要变现转化,比如某些成人产业中的明星。


在办公室打开其网站,激动的心,颤抖的手:






这网站做得比较有特色:


1. 搜索框只能搜索该用户的帖子;


2. 右侧有个推荐栏,可以推荐一些新的博主用户;


3. 可以通过 https://onlyfans.com/用户名 的链接直接访问用户主页:









网站分析




乍一看,这网站不知道如何下手,自定义的用户名,这怎么可能找的全?也没有搜索用户的功能,难道要靠推荐流一个个点开吗?


搜网上老外写的爬虫资料,有个老哥模拟人工浏览,爬了一晚上,抓了一千多条用户数据,然后还洋洋洒洒给公司业绩做了个估值。


既然要琢磨,我顺势注册了其账户,在用户名界面,神奇地发现了下面这个秘密:







除了用户名,我可以通过 https://onlyfans.com/u数字id 链接访问到我的个人主页!


比如搜索 https://onlyfans.com/u98183757 便可以进入该用户主页,链接也会自动转为其用户名链接,并且可以拿到其用户名等一系列数据!








将图中红框请求的返回结果解析成 json,发现清晰的用户数据已经浮出水面了:







用户名、注册时间、上次下线时间、发帖数、被点赞数甚至粉丝数等,一系列数据,就这么轻松拿到了!


即使是我不登陆账户,也可以通过直接访问解析拿到这一系列数据!




Python 爬虫实战



接下来更魔幻的来了~


我的 id 是 8 位数 98xx xxxx,难道注册用户有 9800 万么?


怀着忐忑的心情,用 Python 写了个 for 循环,把 id 从 1 到 9 查了下:







可以拿到 4 条有效数据。


将遍历范围扩大到 1 到 10000,最终拿到了 8500 多条用户数据。


继续扩大范围,将 id 从 1 到 1亿,每 98 个取一次(因为我新建账号 id 是 98xx xxxx),程序跑了一天多,最终拿到 89.8 万条有效用户数据。


因为是每隔 98 抽样的,如果时间充裕,或者把我上面的小白式爬虫给优化下,最终的数据规模将是 89.8 x 98 = 8800.4 万条用户数据。


是的,没有看错。


成人网站,提供付费视频、相册服务,看着完全没有搜索途径,却凭着一个简单的 id 索引,就被我这么硬生生找到了爬取其 8 千万+用户的方法,所用到的也只是 Python 爬虫最常见的 requests 爬虫库和一个 for 循环。


当然,还有后续的有效数据处理、提取,最终写入文件备份等,这里先略过~




后记



说实话,我的爬虫经验仅限于之前学着玩时写文章发过的几个简单例子,最近工作中接触到真实的爬虫案例,越来越觉得爬虫有意思了。


回头看整个过程,发现网站数据可以通过一个递增的 id 来检索,这个收获真的是非常开心甚至自得的。


毕竟,这方法是搜遍全网没头绪,最后自己独立发现的!


最后,成人网站是真的赚钱。。


最最后,这么赚钱的网站竟然安全措施这么差劲。。


浏览 893
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报