简单百度贴吧网页爬取get方式

 1 from urllib import request,parse
 2 import os
 3 # https://tieba.baidu.com/f?kw=lol&ie=utf-8&pn=0
 4 # https://tieba.baidu.com/f?kw=lol&ie=utf-8&pn=50
 5 # https://tieba.baidu.com/f?kw=lol&ie=utf-8&pn=100
 6 # https://tieba.baidu.com/f?kw=lol&ie=utf-8&pn=150
 7 # 分析:
 8 # kw是搜索关键字pn是它的网页序号
 9 # 所以1---0
10 #     2---50
11 #     3---100
12 #      n...(n-1)*50
13
14
15 def query(base_url,kw,start,end):
16     ‘‘‘
17     :param base_url: 网址
18     :param kw: 搜索贴吧关键字
19     :param start: 起始页码
20     :param end: 终止页码
21     :return: 输出网页信息到指定文件夹
22     ‘‘‘
23     dir_name = ‘./teiba/‘+kw+‘/‘
24     header = {
25         ‘User-Agent‘:‘Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0‘
26     }
27     if not os.path.exists(dir_name):
28         os.makedirs(dir_name)
29     for i in range(start,end+1):
30         pn = (i-1)*50
31         query_msg = {
32             ‘kw‘:kw,
33             ‘ie‘:‘utf-8‘,
34             ‘pn‘:pn,
35         }
36         msg = parse.urlencode(query_msg)
37         url = base_url+msg
38         req = request.Request(url,headers=header)
39         response = request.urlopen(req).read().decode()
40         with open(dir_name+str(i)+‘.html‘,‘w‘,encoding=‘utf-8‘)as files:
41             files.write(response)
42
43 if __name__ == ‘__main__‘:
44     base_url = ‘https://tieba.baidu.com/f?‘
45     kw = input(‘输入查询的贴吧>>‘)
46     start = int(input(‘输入起始页码>>‘))
47     end = int(input(‘输入终止页码>>‘))
48     query(base_url,kw,start,end)

原文地址:https://www.cnblogs.com/lizhihoublog/p/11206770.html

时间: 2024-10-19 12:29:38

简单百度贴吧网页爬取get方式的相关文章

WebFetch 是无依赖极简网页爬取组件

WebFetch 是无依赖极简网页爬取组件,能在移动设备上运行的微型爬虫. WebFetch 要达到的目标: 没有第三方依赖jar包 减少内存使用 提高CPU利用率 加快网络爬取速度 简洁明了的api接口 能在Android设备上稳定运行 小巧灵活可以方便集成的网页抓取组件 使用文档 WebFetch的使用非常简单,让小白用户快速上手,WebFetch为用户配置默认页面处理方法,默认将抓取到的页面信息使用System.out.print输出到控制台(通过配置PageHandler修改默认操作).

动态网页爬取例子(WebCollector+selenium+phantomjs)

目标:动态网页爬取 说明:这里的动态网页指几种可能:1)需要用户交互,如常见的登录操作:2)网页通过JS / AJAX动态生成,如一个html里有<div id="test"></div>,通过JS生成<div id="test"><span>aaa</span></div>. 这里用了WebCollector 2进行爬虫,这东东也方便,不过要支持动态关键还是要靠另外一个API -- selen

二毛解读:百度蜘蛛每天都来爬取网站,却只收录首页是怎么回事?

昨夜,一位SEO友人问我一个这样的问题:百度蜘蛛每天都来爬取网站,却只收录首页,文章页及其他页面均未收录,问我是怎么回事? 其实这个问题非常普遍,可以从两个方面分析: 1. 网站内部优化是否完善: 2. 时间问题(文章够原创,站内优化够完善,迟早会收录). 我们主要来谈谈第一个问题:网站内部优化. 其实SEO是什么?SEO不是单纯的迎合百度及其他搜索引擎,他是时刻随用户的体验度来考量网站是否合适.在当今的互联网大环境下,暂时还是随着大多数用户的习惯性体验来对你的网站进行抓取,拍照,索引.网站优化

爬虫简单之二---使用进程爬取起点中文网的六万多也页小说的名字,作者,等一些基本信息,并存入csv中

爬虫简单之二---使用进程爬取起点中文网的六万多也页小说的名字,作者,等一些基本信息,并存入csv中 准备使用的环境和库Python3.6 + requests + bs4 + csv + multiprocessing 库的说明 requests模拟计算机对服务器发送requests请求 bs4:页面分析功能,分析页面找到所需要的特定内容 xlwt:把爬取的内容存入csv文件中 multiprocessing:开启多进程爬取 1.准备URLs 起点中文网 起点中文网的URL:https://w

Python开发简单爬虫(二)---爬取百度百科页面数据

一.开发爬虫的步骤 1.确定目标抓取策略: 打开目标页面,通过右键审查元素确定网页的url格式.数据格式.和网页编码形式. ①先看url的格式, F12观察一下链接的形式;② 再看目标文本信息的标签格式, 比如文本数据为div class="xxx", ③ 容易看到编码为utf-8 2.分析目标 目标: 百度百科python词条 入口页: http://baike.baidu.com/item/Python词条页面url格式:/item/**** 数据格式: 标题: <dd cl

Python开发简单爬虫之静态网页抓取篇:爬取“豆瓣电影 Top 250”电影数据

目标:爬取豆瓣电影TOP250的所有电影名称,网址为:https://movie.douban.com/top250 1)确定目标网站的请求头: 打开目标网站,在网页空白处点击鼠标右键,选择"检查".(小编使用的是谷歌浏览器). 点击"network",在弹出页面若长时间没有数据显示,则试一下F5刷新. 可以得到目标网页中Host和User-Agent两项. 2)找到爬取目标数据(即电影名称)在页面中的位置 右键"检查",选择"Elem

用python进行网页爬取,数据插入数据库

用python进行网页信息的爬取还是很简单的,而且现在进行爬取的 在爬取之前,确定好自己的网页,然后用F12(查看网页源代码,然后确定网页的),这里就以一个简单的,页面布局简单的页面进行讲解:http://jbk.39.net/yyz/jbzs/ 先来看下页面的布局,以及我们想要进行页面的信息: 就这个页面,我们想要从这里面将页面中的疾病的名称,还有就是疾病的介绍,以及疾病的基本信息(是否属于医保.别名.发病部位.传染性...) 代码很简单: #!/usr/bin/env python # co

python动态网页爬取——四六级成绩爬取

需求: 四六级成绩查询网站我所知道的有两个:学信网(http://www.chsi.com.cn/cet/)和99宿舍(http://cet.99sushe.com/),这两个网站采用的都是动态网页.我使用的是学信网,好了,网站截图如下: 网站的代码如下: 1 <form method="get" name="form1" id="form1" action="/cet/query"> 2 3 <table

动态网页爬取

四六级成绩查询网站我所知道的有两个:学信网(http://www.chsi.com.cn/cet/)和99宿舍(http://cet.99sushe.com/),这两个网站采用的都是动态网页.我使用的是学信网,好了,网站截图如下: 网站的代码如下: 1 <form method="get" name="form1" id="form1" action="/cet/query"> 2 3 <table bord