实例3:爬取斗破苍穹小说全文

呜呼~回到家的感觉真的不一样,下了广州站空气就清新了一番。。回到家就是熟悉而又陌生的感觉。

这次的实例是爬取斗破苍穹小说网的斗破苍穹小说全文。首先要找的是原网站,不是百度到的最前面的。因为正版的蜘蛛协议也写得很清楚了。。而且里面的文本内容被藏起来了。无能为力,只能爬别的网啦哈哈。

思路 通常思路1. requests + Beautiful 2. requests + re

这里我们比较一下这两种方法,首先使用requests + re 路线
如图

在这里插入图片描述
要提取的信息都在p标签里面,
所以re.findall用正则表达式去匹配p标签吗?
下图
在这里插入图片描述
下面还有一个p标签呢。。所以findall的话会多出一个句子。
同实例2一样,我们使用select就可以了,经过全文的搜索发现<div class=articlecon 》这个标签是唯一存在的,唯一存在那就soup.select()完事了。

from bs4 import BeautifulSoup
import requests
import time

key_value = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 '
            '(KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'}

def get_html(url):
	try:
    		web_data = requests.get(url,headers = key_value)
    		web_data.raise_for_status()
    		web_data.encoding = web_data.apparent_encoding
    		return web_data.text
	except:
    		return None
file = open('D:/doupoxiaoshuo.txt','a+',encoding='UTF-8')

def write_file(html):
    soup = BeautifulSoup(html,'lxml')
    texts = soup.select('div.articlecon > p')
    for text in texts:
        real_text = text.get_text()
        file.write(real_text+'\n')
        
 if __name__ == '__main__':
    part_url = 'https://m.doupocangqiong1.com/1/t'
    for i in range(20,1677):
        real_url = part_url + str(i) + '.html'
        html = get_html(real_url)
        write_file(html)
        time.sleep(0.5)
        
file.close()


爬取过程十分之久。。
Result!!!
在这里插入图片描述
热爱生活,而爱编程

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值