Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析

  介绍

这期内容当中小编将会给大家带来有关Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

前言

今天在知乎上看到一个关于【世纪佳缘找对象靠谱吗?】的讨论,其中关注的人有1903人,被浏览了1940753次,355个回答中大多数都是不靠谱。用Python爬取世纪佳缘的数据是否能证明它的不靠谱吗?

 Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析

翻了几页找到一个search_v2。php的链接,它的返回值是一个不规则的json串,其中包含了昵称,性别,是否婚配,匹配条件等等

 Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析

通过url +参数的获取方式,抓取了10000页的数据<强>总计240116

/> </p> <p>需要安装的模块有openpyxl,用于过滤特殊的字符</p> <pre> #,编码:utf - 8
  import  csv
  import  json
  
  import 请求
  得到openpyxl.cell.cell  import  ILLEGAL_CHARACTERS_RE
  import 再保险
  
  line_index =0
  
  def  fetchURL (url):
  ,,
  ,,,headers =, {
  ,,,,,,,& # 39;接受# 39;:,& # 39;*/* & # 39;
  ,,,,,,,& # 39;用户代理# 39;:,& # 39;Mozilla/5.0, (Windows  NT  10.0;, Win64;, x64), AppleWebKit/537.36, (KHTML, like 壁虎),Chrome/86.0.4240.75  Safari/537.36 & # 39;
  ,,,,,,,& # 39;饼干# 39;:,& # 39;guider_quick_search=;, accessID=20201021004216238222;, PHPSESSID=11117 cc60f4dcafd131b69d542987a46;, is_searchv2=1;, SESSION_HASH=8 f93eeb87a87af01198f418aa59bccad9dbe5c13;, user_access=1;, Qs_lvt_336351=1603457224;, Qs_pv_336351=4391272815204901400 % 2 c3043552944961503700& # 39;
  ,,,}
  
  ,,,r =, requests.get (url,头=标题)
  ,,,r.raise_for_status ()
  ,,,return  r.text.encode (“gbk", & # 39;忽略# 39;).decode (“gbk

<强>二,去重

在处理数据去掉重复的时候发现有好多重复的,还以为是代码写的有问题呢,查了好久的错误最后才发现网站在100页上只有数据有好多重复的,下面两个图分别是110页数据和111页数据,是不是有很多熟面孔。

110页数据

 Python爬取世纪佳缘的数据是否能证明它不靠谱的示例分析

111页数据

/> </p> <p>过滤重复后的数据只剩下<强>,1872,</>强了,这个水分还真大</p> <pre> def  filterData ():
  ,,,filter =, []
  ,,,csv_reader =, csv.reader(打开(“sjjy.csvPython爬取世纪佳缘的数据是否能证明它不靠谱的示例分析