爬虫实战 爬取糗事百科

Posted afei123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫实战 爬取糗事百科相关的知识,希望对你有一定的参考价值。

偶然看到了一些项目,有爬取糗事百科的,我去看了下,也没什么难的

首先,先去糗事百科的https://www.qiushibaike.com/text/看一下,

先检查一下网页代码,

技术图片

就会发现,需要爬取的笑话内容在一个span标签里,而且父标签是class为content的div里,那就很简单了,用select方法,先找到该文件,然获取下来并保存在txt文件里。比较枯燥。

直接贴代码吧

from bs4 import BeautifulSoup
import lxml
import requests

#url = ‘https://www.qiushibaike.com/text/‘

def spyder(url):
    try:
        print(url)
            #模拟浏览器
        kv = user-agent:Mozilla/5.0
        r = requests.get(url , headers = kv)
            #状态码检查,用于
        r.raise_for_status()
            #print(r.text)
        r.encoding = r.apparent_encoding
        soup = BeautifulSoup(r.text,lxml)
        s = soup.select("div.content>span")
        data = open(r"qiushi.txt","w", encoding="utf-8")

        txt = "hello"

        for i in range(25):
            txt = s[i].text
            print(txt)
            data.write(txt)

        data.close()

    except:
        ("爬取失败")

def main():
      
    for i in range(13):
        url = https://www.qiushibaike.com/text/page/
        url=url+str(i+1)
        #print(url)
        spyder(url)

main()4

 

这段代码能直接爬取13页的内容,不过在保存的时候有个小毛病,只能保存最后的代码,我也懒得去管了,毕竟实现功能了嘛,如果有兴趣可以稍加改动。

在main里,我用了字符串拼接,主要是观察了下他的url的规律,也就避免了“自动翻页”

以上是关于爬虫实战 爬取糗事百科的主要内容,如果未能解决你的问题,请参考以下文章

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

Android实战——jsoup实现网络爬虫,糗事百科项目的起步

Android实战——jsoup实现网络爬虫,糗事百科项目的起步

爬虫实战1--抓取糗事百科段子

Python爬虫编程思想(38):项目实战:抓取糗事百科网的段子

如何入门爬虫(基础篇)