在原有基础上,增加写入伪造浏览器的UserAgent

fake_user_agent: pip install fake-useragent//这个第三方库,维护了各种主流浏览器的UA标识,并且会定时更新这个库,淘汰一些过期的UA。

首先,在pycharm中安装fake_useragent

【爬虫入门】抓取糗事百科的段子3.0

然后修改爬虫类的代码

from fake_useragent import UserAgent

class QSBKSpider(object):
    """
    爬虫类
    """

    def __init__(self):
    	#前面省略
        # 实例化工具类DataTool的对象
        self.tool = DataTool()
        ####这里添加
        # 实例化Ua对象
        self.ua = UserAgent()

    def get_list_html(self, page_num):
       ####这里修改为
        headers={
            #random属性:从ie、firefox、chrome等浏览器的ua中,随机获取一个ua。
            'User-Agent':self.ua.data_random
        }
        request = Request(page_url, headers=headers)

相关文章: