Python爬虫中获取百科段子的案例-创新互联

这篇文章将为大家详细讲解有关Python爬虫中获取百科段子的案例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、网站设计、伽师网络推广、重庆小程序开发公司、伽师网络营销、伽师企业策划、伽师品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们大的嘉奖;创新互联为所有大学生创业者提供伽师建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

糗事百科在前一段时间进行了改版,导致之前的代码没法用了,会导致无法输出和 CPU 占用过高的情况,是因为正则表达式没有匹配到的缘故。 现在,博主已经对程序进行了重新修改,代码亲测可用。

 首先我们确定好页面的URL。初步构建如下的代码来打印页面代码内容试试看,先构造最基本的页面抓取方式,看看会不会成功。

# -*- coding:utf-8 -*-
import urllib
import urllib2
 
 
page = 1
url = 'http://www.qiushibaike.com/hot/page/' + str(page)
try:
    request = urllib2.Request(url)
    response = urllib2.urlopen(request)
    print response.read()
except urllib2.URLError, e:
    if hasattr(e,"code"):
        print e.code
    if hasattr(e,"reason"):
        print e.reason

运行程序,哦不,它竟然报错了,真是时运不济,命途多舛啊

line 373, in _read_status
 raise BadStatusLine(line)
httplib.BadStatusLine: ''

好吧,应该是 headers 验证的问题,我们加上一个 headers 验证试试看吧,将代码修改如下

# -*- coding:utf-8 -*-
import urllib
import urllib2
 
page = 1
url = 'http://www.qiushibaike.com/hot/page/' + str(page)
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers = { 'User-Agent' : user_agent }
try:
    request = urllib2.Request(url,headers = headers)
    response = urllib2.urlopen(request)
    print response.read()
except urllib2.URLError, e:
    if hasattr(e,"code"):
        print e.code
    if hasattr(e,"reason"):
        print e.reason

嘿嘿,这次运行终于正常了,打印出了第一页的 HTML 代码,大家可以运行下代码试试看。在这里运行结果太长就不贴了。

关于Python爬虫中获取百科段子的案例就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


当前名称:Python爬虫中获取百科段子的案例-创新互联
网站链接:http://azwzsj.com/article/deidcs.html