Python爬虫——实战:爬取博客园指定信息

Python爬虫——实战:爬取博客园指定信息

用正则表达式提取数据

# 课程内容:爬虫实战博客园
# 开发时间: 16:25
import requests
import re
def get_one_page(url,page):
    headers = {}
    html_txt = ''
    headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'
    response = requests.get('http://www.baidu.com', headers=headers)
    if response.status_code == 200:
        html_txt = response.text
    return html_txt

def parse_one_page(html_txt):
    html_str = html_txt.replace('\n','')
    pat_all = r'<div class="day">(.*?)编辑'
    blogs = re.findall(pat_all,html_str)
    print(blogs)
    for blog in blogs:
        posdate = ''
        title = ''
        match = re.findall(r'<span>(.*?)</span>',blog)
        if len(match) == 1:
            title = match[0]
        com_count,read_count,digg_count = re.findall(r'\((\d+)\)',blog)
    return (title,read_count,com_count,digg_count)

if __name__=='__main__':
    base_url = 'https://www.cnblogs.com/pinard/default.html?page='
    urls = [base_url+str(i) for i in range(1,15)]
    #获取分页连接
    for urls in urls:
        #1、想获取一页的内容
        html_txt = get_one_page(url)
        #2、解析每一页的内容
        cont = parse_one_page(html_txt)
        #3、保存提取数据
        save2txt(cont)

    #4、重复步骤1,2
    #5、保存提取的数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

企鹅家的北极熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值