美文网首页spider
07 利用python爬虫技术爬取贴吧源码案例

07 利用python爬虫技术爬取贴吧源码案例

作者: python_spider | 来源:发表于2017-11-21 15:55 被阅读536次

以爬取“李毅”吧为例,写一个小程序,完成自动的爬取与本地保存工作,此处在python3环境下运行,python2环境下response.content是字符串,不需要解码,去掉本代码中的decode()即可,具体区别参照文章 04requests模块在python2和python3环境下的小小区别
另外python2环境下,代码中的save方法encoding参数需要去掉,代码中已注释

# coding=utf-8
import requests


class TiebaSpider:
    def __init__(self, tieba_name):
        self.tieba_name = tieba_name
        # 定义一个临时的url
        self.temp_url = 'https://tieba.baidu.com/f?kw='+tieba_name+'&pn={}'
        self.headers = {
            'User - Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 \
(KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36'
        }

    def get_url_list(self):   # 构造url列表
        url_list = [self.temp_url.format(i*50) for i in range(1000)]
        return url_list

    def parse_url(self, url):  # 发送请求获取响应
        print('now parse', url)
        response = requests.get(url, headers=self.headers)
        return response.content.decode()

    def save_html(self, html, page_num):  # 保存html
        file_path = self.tieba_name + "_" + str(page_num) + ".html"
        with open(file_path, "w", encoding='utf-8') as f:   # windows下需要加encoding = 'utf-8',因为windows 默认编码方式是gbk\
            如果是python2环境下运行,需要去掉encoding这个参数,否则报错
            f.write(html)
        print("保存成功")

    def run(self):
        # 1.url list
        url_list = self.get_url_list()
        # 2.发送请求,获取响应
        for url in url_list:
            html_str = self.parse_url(url)
        # 3.保存
            page_num = url_list.index(url) + 1  # index方法获取当前要保存的页码数
            self.save_html(html_str, page_num)

if __name__ == '__main__':
    tieba = TiebaSpider("李毅")
    tieba.run()

运行代码,保存本地结果展示如下


结果展示如图所示

相关文章

  • 07 利用python爬虫技术爬取贴吧源码案例

    以爬取“李毅”吧为例,写一个小程序,完成自动的爬取与本地保存工作,此处在python3环境下运行,python2环...

  • 第四阶段 爬虫整理

    爬虫概述 爬虫案例 案例1:爬取百度贴吧数据 分析:GET方式爬取数据抓包:设计:实现: 案例2:抓妹子图 分析:...

  • Python学习

    python爬虫(五) python爬虫爬取豆瓣电影Top250数据 利用python爬取豆瓣电影TOP250页面...

  • Python爬虫爬取贴吧美女图片批量下载成功了

    首先。前几天利用Python爬虫爬取贴吧美女图片虽然说成功的爬取到了图片地址,但是死活下载不了,一直写入失败。可以...

  • Python爬虫实战

    注:采转归档,自己学习查询使用 Python爬虫实战(1):爬取糗事百科段子Python爬虫实战(2):百度贴吧帖...

  • 爬取百度贴吧帖子

    依然是参考教程 Python爬虫实战一之爬取百度贴吧帖子。作者崔庆才写了很多关于Python爬虫的文章,大家有兴趣...

  • 3个适合新人上手的Python项目

    人生苦短,我用Python! 废话不多说,今天给大家分享三个极实用的Python爬虫案例。 爬取网站美图 爬取图片...

  • 爬虫系列(十):使用xpath做爬虫

    案例:使用XPath的爬虫 现在我们用XPath来做一个简单的爬虫,我们尝试爬取某个贴吧里的所有帖子,并且将该这个...

  • python爬虫 爬取贴吧图片

    根据网上博客介绍,复现的一款极简爬虫。代码如下(PS:若需使用,则需要修改对应目录)

  • 利用python爬取赶集网二手货物数据

    前言: 在之前的文章中,简单的利用python爬取了代理ip的数据,在这篇文章中讲述一下利用之前用到的爬虫技术爬取...

网友评论

    本文标题:07 利用python爬虫技术爬取贴吧源码案例

    本文链接:https://www.haomeiwen.com/subject/njjwvxtx.html