zoukankan      html  css  js  c++  java
  • Python3---爬虫---抓取百度贴吧

    前言

    该文章主要描述如何抓取百度贴吧内容。当然是简单爬虫实现功能,没有实现输入参数过滤等辅助功能,仅供小白学习。

    修改时间:20191219

    天象独行

    import os,urllib.request,urllib.parse
    
    '''
        测试要求:
            1;输入吧名,首页,结束页进行爬虫。
            2;创建一个以吧名为名字的文件夹,里面是每一页的html的内容,文件名格式:吧名_page.html
    '''
    url = "https://tieba.baidu.com/f?"
    
    ba_name = input("请输入需要下载的吧名: ")
    home_page = int(input("请输入首页:"))
    end_page = int(input("请输入结束页:"))
    #创建一个路径变量:
    path = "C:\Users\aaron\Documents\Python3-test"
    os.makedirs(path)
    '''
        pn = 0  第一页
        pn = 50 第二页
        pn = 100 第三页
        。。。。
        pn = (n-1)*50 第n页
    '''
    for page in range(home_page,end_page+1):
        #构造请求参数字典
        data = {
            "kw":ba_name,
            "ie":"urt-8",
            "pn":(page-1)*50
        }
        #构造请求hearders头
        #构造请求参数
        url_get = urllib.parse.urlencode(data)
        #构造请求url
        url_get = url + url_get
        #请求url
        request = urllib.request.urlopen(url_get)
        #创建一个文件名
        filename = ba_name + '_' + str(page) + '.html'
        #拼接文件路径
        filepath = path + '\' + filename
        print(filepath)
        #写入内容
        with open(filepath,'wb') as fp:
            fp.write(request.read())

    执行结果:

  • 相关阅读:
    window.onload和DOMContentLoaded的区别
    存储
    JSONP的实现原理
    对于一个无线下拉加载图片的页面,如何给每个图片绑定事件
    事件冒泡
    通用的事件绑定函数
    拆解url的各部分
    如何检测浏览器的类型
    DOM节点操作
    es6基本用法
  • 原文地址:https://www.cnblogs.com/aaron456-rgv/p/12072797.html
Copyright © 2011-2022 走看看