爬虫的定向爬取

原创 2017年07月21日 15:49:47

一、爬虫的定向爬取技术: 根据设置的主题,对要爬取的网址或者网页中的内容进行筛选。


二、爬虫的信息筛选方法

         (1) 通过正则表达式筛选


         (2)通过XPath表达式筛选 (Scrapy经常使用)


         (3)通过xslt 筛选


三、定向爬虫实战爬取评论内容

import urllib.request
import http.cookiejar
import re
#视频编号
vid="1472528692"
#刚开始时候的评论ID
comid="6173403130078248384"
url= "http://coral.qq.com/article/"+vid+"/comment?commentid="+comid+"&reqnum=20"
headers={ "Accept":" text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
                        "Accept-Encoding":" gb2312,utf-8",
                        "Accept-Language":" zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3",
                          "User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36 SE 2.X MetaSr 1.0",
                        "Connection": "keep-alive",
                        "referer":"qq.com"}
cjar=http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cjar))
headall=[]
for key,value in headers.items():
    item=(key,value)
    headall.append(item)
opener.addheaders = headall
urllib.request.install_opener(opener)
#建立一个自定义函数craw(vid,comid),实现自动抓取对应评论网页并返回抓取数据
def craw(vid,comid):
    url= "http://coral.qq.com/article/"+vid+"/comment?commentid="+comid+"&reqnum=20"
    data=urllib.request.urlopen(url).read().decode("utf-8")
    return data
idpat='"id":"(.*?)"'
userpat='"nick":"(.*?)",'
conpat='"content":"(.*?)",'
#第一层循环,代表抓取多少页,每一次外层循环抓取一页
for i in range(1,10):
    print("------------------------------------")
    print("第"+str(i)+"页评论内容")
    data=craw(vid,comid)
    #第二层循环,根据抓取的结果提取并处理每条评论的信息,一页20条评论
    for j in range(0,20):
        idlist=re.compile(idpat,re.S).findall(data)
        userlist=re.compile(userpat,re.S).findall(data)
        conlist=re.compile(conpat,re.S).findall(data)
        print("用户名是 :"+eval('u"'+userlist[j]+'"'))
        print("评论内容是:"+eval('u"'+conlist[j]+'"'))
        print("\n")
    #将comid改变为该页的最后一条评论id,实现不断自动加载
    comid=idlist[19]

 

        

      

版权声明:本文为博主原创文章,未经博主允许不得转载。

webmagic爬取渲染网站

最近突然得知之后的工作有很多数据采集的任务,有朋友推荐webmagic这个项目,就上手玩了下。发现这个爬虫项目还是挺好用,爬取静态网站几乎不用自己写什么代码(当然是小型爬虫了~~|)。好了,废话少说,...
  • lx520aa
  • lx520aa
  • 2017年09月12日 16:10
  • 85

全文检索引擎Solr系列——入门篇

Solr采用Lucene搜索库为核心,提供全文索引和搜索开源企业平台,提供REST的HTTP/XML和JSON的API,如果你是Solr新手,那么就和我一起来入门吧!本教程以solr4.8作为测试环境...
  • yjl33
  • yjl33
  • 2016年06月14日 09:44
  • 1867

[笔记]python网络爬虫:一个简单的定向爬取大学排名信息示例

爬取的网站信息网站地址 中国大学排行榜:http://www.eol.cn/html/ky/16phb/ 爬取内容 爬取该网站的综合排行榜单: 网页对应的源代码 ...

[python爬虫] Selenium定向爬取PubMed生物医学摘要信息

本文主要是自己的在线代码笔记,在生物医学本体Ontology构建过程中,我使用Selenium定向爬取生物医学PubMed数据库的内容。PubMed是一个免费的搜寻引擎,提供生物医学方面的论文搜寻以及...

[python爬虫] Selenium定向爬取虎扑篮球海量精美图片

作为一名从小就看篮球的球迷,会经常逛虎扑篮球及湿乎乎等论坛,在论坛里面会存在很多精美图片,包括NBA球队、CBA明星、花边新闻、球鞋美女等等,如果一张张右键另存为的话真是手都点疼了。作为程序员还是写个...

Scrapy定向爬虫教程(三)——爬取多个页面

本节内容 本部分所实现的功能是,批量的爬取网页信息,不再是像以前那样只能下载一个页面了。也就是说,分析出网页的url规律后,用特定的算法去迭代,达到把整个网站的有效信息都拿下的目的。 因为本部...

python 爬虫 爬取糗事百科段子

在网络上看到有介绍python爬虫爬去糗事百科段子的文章,觉得还挺好玩的,所以照着文章的思路自己重新实现了代码,完成了一个小小的爬虫爬取数据的例子。1.抓取页面的源码首先我们确定好页面的URL是 ht...

python爬虫爬取糗事百科内容

  • 2017年11月17日 10:50
  • 869B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:爬虫的定向爬取
举报原因:
原因补充:

(最多只允许输入30个字)