Python爬虫实战(六):爬取糗事百科段子

原创 2017年09月05日 12:33:56

直接上代码:


#coding=utf-8
import requests
from bs4 import Tag
from bs4 import BeautifulSoup

def getHtml(url):  
    page = requests.get(url)  
    html = page.text  
    return html

def getImg(html):
    get_text = Tag.get_text
    soup = BeautifulSoup(html, 'html.parser')
    
    info = soup.find_all('h2')
    user = (x.get_text() for x in info)   #使用生成器代替list(map(get_text,info))
                    
    info = soup.find_all('span',class_="stats-vote")
    vote = (x.get_text() for x in info)   #使用生成器代替list(map(get_text,info))  

    info = soup.find_all('div',class_="content")
    text = (x.get_text() for x in info)   #使用生成器代替list(map(get_text,info))  
    
    for x in zip(user,text,vote):         #zip函数同时遍历
        Enter = input()
        if Enter == 'Q' or Enter == 'q':
            return -1
        print("\n".join((s.strip() for s in x))) #使用生成器代替list(map(str.strip,x))
    return 1
 
if __name__=='__main__':
    url = "https://www.qiushibaike.com/hot/"
    html,i = getHtml(url),2
    print("开始读取数据,请按回车键...按Q键退出\n")
    while (getImg(html) == 1):
        print("\n第{}页\n".format(i))
        url = ("https://www.qiushibaike.com/hot/page/%s/" % str(i))
        html,i = getHtml(url),i+1
   

缺点:无法过滤掉既有文本,又有图片的内容。


待以后优化更新。

相关文章推荐

Python爬虫实战之爬取糗事百科段子

Python爬虫实战之爬取糗事百科段子完整代码地址:Python爬虫实战之爬取糗事百科段子程序代码详解: Spider1-qiushibaike.py:爬取糗事百科的8小时最新页的段子。包含的信息有作...

Python爬虫实战一之爬取糗事百科段子

点我进入原文 需要注意的是, 距离作者的原文发布的时间有一段距离了, 糗百的html 代码发生部分变化, 因而 正则表达式模块需要自己重新根据实际情况进行编写~~ Python爬虫实战一之...

Python爬虫实战一之爬取糗事百科段子

本文转自:http://cuiqingcai.com/990.html 转自:静觅 » Python爬虫实战一之爬取糗事百科段子     大家好,前面入门已经说了那么多基础知识了,下面我们做...

Python爬虫实战(1):爬取糗事百科段子

Python爬虫入门(1):综述Python爬虫入门(2):爬虫基础了解Python爬虫入门(3):Urllib库的基本使用Python爬虫入门(4):Urllib库的高级用法Python爬虫入门(5...

python爬虫爬取糗事百科内容

  • 2017年11月17日 10:50
  • 869B
  • 下载

【爬虫实战一】之糗事百科热门段子采集

糗事百科段子采集的实例已经有很多前辈写过了,但年代久远,普遍基于python2.7,并且没有用到BeautifulSoup,而是自己写正则表达式进行匹配,因此,每次网站改版后,代码重构的工作量比较大。...

python 爬虫 爬取糗事百科段子

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

Python爬虫--使用request爬取糗事百科

使用Python3+Request实现糗事百科爬虫

python爬虫学习笔记(1)-爬取糗事百科

遇见问题汇总一、#无定制请求头 from urllib import request from bs4 import BeautifulSoup weburl="https://www.qiushib...
  • spark_l
  • spark_l
  • 2017年07月21日 15:06
  • 131

糗事百科段子爬取

糗事百科段子爬取 爬取多页的段子一、网站分析(1)打开网站糗事百科,可以发现很多段子: (2)经过翻页,可以发现网址的规律:for k in range(0,10): url = "http:...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python爬虫实战(六):爬取糗事百科段子
举报原因:
原因补充:

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