网页手机号抓取程序(免费的临时手机号,告别垃圾短信骚扰!(组图))

优采云 发布时间: 2021-12-22 21:13

  网页手机号抓取程序(免费的临时手机号,告别垃圾短信骚扰!(组图))

  注:本文提供的思路和代码仅用于个人测试和研究,并未对目标网站造成实质性干扰,所有细节已通知网站的开发者,也请不要用于恶意用途。

  在我的微信公众号“免费临时手机号,你可以用这些公共手机号注册一些好玩的(或者你知道的)网站和APP,不用担心个人信息泄露。免费临时手机号号码,与垃圾邮件骚扰说再见!

  这个网站的域名是:

  有了这些临时手机号,您可以: 对于需要注册下载信息的论坛,使用临时手机号注册,用完就可以离开。无需担心您的个人手机号码泄露。

  接收信息需要填写手机号,可以使用临时手机号进行验证,收到信息后将不会收到商家回电~

  许多网站或APP不支持注销账号。此时,您可以将绑定的手机号码更改为临时手机号码。不要忘记更改密码并清除其中的所有痕迹。从此,这笔账将与我无关。

  有了这些匿名的公共手机号码,广大网友又会用什么呢?

  只需点击一个手机号码的短信接收页面,就可以看到各种来源的短信验证码。我们可以很容易的看到这个手机号注册了哪些网站和APP,然后用手机验证码登录这些网站或者APP,说不定能看到很多有意思的内容哟。

  令我惊讶的是,这个手机号码中的短信数量超过了23,000页。如果每页有 10 条短信,就会有超过 230,000 条短信。整个网站有这么多手机号。, 应该有大量的短消息存储在服务器上。强烈建议网站开发者可以删除很久以前的记录,只保留最近几天的记录。这样一方面可以缓解服务器压力,也可以防止一些无聊的人(比如我?)用爬虫爬取数据。什么,哈哈~

  那就对了!为了查看大家用这个手机号注册了哪个网站或者APP,我用Python写了一个爬虫脚本,自动翻页抓取一些短信,然后解析信息的来源(通常是第一个大括号[])里面的内容,分析一下频率,说不定你能找到一些你没听说过的网站或者APP,哈哈。

  下面是完整的代码,附上一些注释,理解无压力:

  # 自动抓取云端短信网页上的验证码短信并分析来源

  #青2019.03.21

  #

  *敏*感*词*重新

  导入时间

  *敏*感*词*请求

  从 bs4 导入 BeautifulSoup

  def get_page_info(link, f):

  header={ # 假标题

  '用户代理':'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/4< @6.0.2490.80 Safari/537.36',

  '推荐人':'#39;,

  }

  r = requests.get(link, headers=header)

  汤 = BeautifulSoup(r.content, "html.parser")

  table = soup.find_all("div", class_="sms-content-table") # 有两个sms-content-table表,第一个是最新的4条信息,第二个是全部信息。

  infos = table[1].select('tbody tr')

  有关信息中的信息:

  content = info.find_all("td")[2].text[1:-1] # 去除开头和结尾的空格。这是每个短消息的内容,可以写入文件。

  打印(内容)

  打印("-"*30)

  from_name = re.match(r'[(.*?)]', content) # 第一个大括号通常是源名称,使用最短匹配(.*?),否则默认(.*)为贪婪的匹配。

  如果(来自_名称):

  from_name = from_name.group(0)[1:-1] # 去掉左右大括号 []

  # 打印(from_name)

  f.write(from_name +'\n') # 逐行写入txt文件。实际上,您不需要写入文件。这主要是为了您自己的观看。

  定义排序结果(文件名):

  result = [] # 逐行读取文本文档中的源名称生成列表

  with open(filename,'r') as f:

  对于 f 中的行:

  result.append(line.strip('\n').split(',')[0])

  name_count = {} #定义一个元组,key是列表中的元素,key是出现的次数

  for i in set(result): # set 用于删除重复元素。

  name_count[i] = result.count(i)

  sorted_dict = sorted(name_count.items(), key=lambda d:d[1], reverse = True) # 根据key值从大到小排序Dict。

  对于 sorted_dict 中的项目:

  打印(项目[0] +':'+ str(项目[1]))

  如果 __name__ =='__main__':

  filename = "info.txt" # 指定保存数据的文本文件

  f = 打开(文件名,'w')

  for i in range(1,101): #自动翻页,这里可以设置需要抓取的页数(以100页为例)

  打印("\n页%s\n"% i)

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线