首页 存档 技术 查看内容

利用python爬取人人贷网的数据

2018-3-30 13:00 |来自: 互联网 909 0

摘要: 数据挖掘入门与实战 公众号: datadw 人人贷网站需要用户登录才能看到其相应的借贷人信息。也就是说在爬取数据时,需要用户登录。回顾之前的代码,我想是保存cookie这种方法是不能用了。必须找到一种新的方法来模拟 ...



数据挖掘入门与实战 公众号: datadw


人人贷网站需要用户登录才能看到其相应的借贷人信息。也就是说在爬取数据时,需要用户登录。回顾之前的代码,我想是保存cookie这种方法是不能用了。必须找到一种新的方法来模拟登录网站。查了许多资料,数据捉取无外乎有3种方法:

1.直接抓取数据。

2.模拟浏览器抓取数据。

3.基于API接口抓取数据

综合分析,我决定用第2种方法"模拟浏览器登录",那得找好相应的python包,网上有:mechanize,selenium等等。


1.mechanize包的尝试

br.select_form(nr = 0) # Find the login form
br[
'vb_login_username'] = '你的用户名'
br['vb_login_password'] = '你的注册密码'

这段代码中老是遇到问题,第一,select_form中的nr怎么找,第二,在人人贷网站源代码中如何找所谓的'vb_login_username','vb_login_password'的专有名词。


其实我在代码测试中还是找到对于的nr=0,但是找了好久找不到对应的'vb_login_username'。(个人不太懂html,学的比较菜,有兴趣的可以尝试一下)。后来听朋友说可以试试selenium。

前面废话说了一大堆,都是我学的比较菜,也就是我的经验之谈。


2.selenium包的尝试(重点)

首先你得安装好它,直接pip install selenium即可。而且还要下载相应的浏览器驱动(这里我的运行环境是linux,python好像是3.0以上的,浏览器是firefox)


驱动的下载地址为https://github.com/mozilla/geckodriver/releases(下载好自己系统的版本),然后放到相应的PATH路径中,否则找不到driver。


Window下驱动的放置位置:

  将geckodriver.EⅩE复制到C:\ProgramFiles(x86)\mozillafirefox目录下;
  并在环境变量Path中添加路径:C:\ProgramFiles(x86)\mozillafirefox;
  重启cmd,再次运行即可;
    

Linux下驱动的放置位置:

   解压后将geckodriver存放至 /usr/local/bin/ 路径下即可
   sudo mv ~/Downloads/geckodriver /usr/local/bin/

相应代码如下:


相应数据图展示:

PS:
  其中'loanId2.csv'是之前博客(http://www.cnblogs.com/Yiutto/p/5890906.html)
  爬取整理的loanId,只有通过loanId才能爬取借贷人信息。

  后来运行上述代码大概爬了3000多条就中断了(应该是同一ip访问过多的问题),如果需要大量数据的可以考虑分批爬取,多台电脑同时进行。


新浪微博名称:大数据_机器学习


数据挖掘入门与实战

搜索添加微信公众号:datadw


教你机器学习,教你数据挖掘


长按图片,识别二维码,点关注


本文转载于微信公众号: 数据挖掘入门与实战(datadw),更多微信文章请扫描关注公众号:

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部