【评论文本分类】1.爬取评论数据

环境配置

  • Ubuntu 16.04
  • Python 3.5

技术框架

  • Scrapy
  • Selenium
  • PhantomJS

需求目标

对网址http://liuyan.cjn.cn/index.html进行数据爬取

本文爬虫有三层爬取,爬取结构层次如图所示,

  • 主页面

mark

  • 列表页面,需要利用selenium+phantomJS模拟点击加载更多按钮

mark

  • 详情页面

mark

  • 主页面中的红框中的各区(功能区)政府部门法检及其他单位等作为一级类保存,然后依次爬取一级类中各个分类
  • 进入到列表页面,因为此页面是动态加载,并且是简介列表,因此需要加载完所有列表进入到详情页面。
  • 进入到详情页面,爬取相应内容。

设计方案

动态爬取数据一般有两种方法

  • 分析包,构造Request
  • 通过模拟浏览器行为加载页面

通过尝试,第一种方法对于此网站不适合,采用第二种方法。

采用Scrapy+Selenium+PhantomJS来进行动态网页的爬取。

Selenium

Selenium是一个自动化测试工具,本文用到的是其Webdriver,用其来操作浏览器,可以操作多种主流浏览器,如Chrome,Firefox等,下文中的PhantomJS是一种无界面的浏览器。

PhantomJS

PhantomJS是一个无界面浏览器,提供JavaScript接口。通过这个工具,可以进行页面的加载、解析、操作等。

爬取方案

  • 先爬取主页面各个主类(如各区(功能区)政府部门等)下的子类链接,如(江岸区、江夏区等)
  • 按照先前爬取的子类链接依次打开跳转到列表界面,然后利用Selenium+PhantomJS模拟浏览器动态加载完全部列表,解析出所有列表的链接,跳转到详情页面
  • 进入到详情页面,解析所要提取的内容

详细步骤

安装Scrapy

sudo pip3 install scrapy

安装PhantomJS

  1. 安装PhantomJS
sudo apt-get install phantomjs
  1. apt-get会安装不完整,需要安装以下

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值