简单的python爬虫程序(爬取百度贴吧帖子)

这篇博客是Python初学者的爬虫实践,详细介绍了如何分析百度贴吧URL,抓取页面,使用正则表达式提取帖子标题、总数及正文内容,并将数据写入文件。内容包括URL分析、页面抓取、信息提取和完整代码展示。
摘要由CSDN通过智能技术生成

因刚刚开始学习python,水平有限,仅供参考,如果错误,欢迎大家在指出改正!


1.URL 地址分析

我选取的一个百度贴吧帖子的网址是http://tieba.baidu.com/p/4739169817(这是一个秦时明月吧的帖子,因小弟是秦迷),各位可以点击进去查看一下。

如果点击只看楼主或者翻页,则会产生两个参数http://tieba.baidu.com/p/4739169817?pn=2http://tieba.baidu.com/p/4739169817?see_lz=1,分析一下该网址如下:

2.页面抓取

我们构建一个类BDTB,该类作为爬取百度贴吧的主要的类,我们利用urllib包中的方法urlopen。
我选用的python版本为:python3.5,所以urllib包下又有四个包,分别为requeset、error…(详情可查看官方文档)
代码如下:

import urllib.request
import urllib.error
import re

#百度贴吧爬虫类
class BDTB:
    def __init__(self, baseUrl, seeLZ):
        self.baseURL = baseUrl
        self.seeLZ = '?see_LZ=' + str(seeLZ)
        self.tool = Tool()
        self.file = None
        self.defaultFileTitile = u'百度贴吧'
        self.floor = 1

    def getPage(self, pageNum):
        try:
            url = self.baseURL + self.seeLZ + '&pn=' + str(pageNum)
            request = urllib.request.Request(url)
            response = urllib.request.urlopen(request)
            return response.read().decode('utf-8')
        except urllib.error.URLError as e:
               
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值