python爬取百度百科搜索结果_用Python抓取百度搜索结果,python,爬取,的
前言
前几天爬的今天整理了一下发现就两个需要注意的点
一是记得用带cookie的方式去访问,也就是实例化requests.session()
二是转化一下爬取到的url,访问爬到的url得到返回的Location值,该值便是真实的地址(如果你不是要爬url当我没说)
知道了这两点可以直接先去尝试一下,并没有想象的那么难,爬不出来再看代码
正文
不带cookie访问,直接用requests.get()访问,可以看到只能成功访问一次。其他的虽然状态码是200但应该是触发了反爬机制返回了其他页面给你
带cookie访问,基本上都成功了
转化一下得到的url,得到最终的url
最终代码
import requests
from bs4 import BeautifulSoup
import time
#将百度的url转成真实的url
def convert_url(url):
resp = requests.get(url=url,
headers=headers,
allow_redirects=False
)
return resp.headers['Location']
#获取url
def get_url(wd):
s = requests.session()
#10为第2页,20为第三页,30为第四页,以此类推
for i in range(10, 600, 10):
url = 'https://www.baidu.com/s'
params = {
"wd": wd,
"pn": i,
}
r = s.get(url=url, headers=headers, params=params)
print(r.status_code)
soup = BeautifulSoup(r.text, 'lxml')
for so in soup.select('#content_left .t a'):
g_url = so.get('href')
print(convert_url(g_url))
time.sleep(1 + (i / 10))
if __name__ == '__main__':
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0",
"Host": "www.baidu.com",
}
wd = input("输入搜索关键字:")
get_url(wd)
python爬取百度百科搜索结果_用Python抓取百度搜索结果,python,爬取,的相关推荐
- 新人百度百科怎么做_如何做新人百科技巧分享
随着百科的发展,现在一共有五家百科词条,分别是 百度百科,搜狗百科,好搜百科,快懂百科,维基百科. 百科词条权重值高,呈现好,已成为了黄金社交名片. 现在各大 APP.品牌.企业.演员.艺术大师.医师 ...
- 话剧演员百度百科怎么做_如何做话剧演员百科技巧分享
随着百科的发展,现在一共有五家百科词条,分别是 百度百科,搜狗百科,好搜百科,快懂百科,维基百科. 百科词条权重值高,呈现好,已成为了黄金社交名片. 现在各大 APP.品牌.企业.演员.艺术大师.医师 ...
- 网络红人百度百科怎么做_如何做网红搜狗好搜百科技巧分享
随着百科的发展,现在一共有五家百科词条,分别是 百度百科,搜狗百科,好搜百科,快懂百科,维基百科. 百科词条权重值高,呈现好,已成为了黄金社交名片. 现在各大 APP.品牌.企业.演员.艺术大师.医师 ...
- github高级搜索技巧_【建议收藏】百度 quot;隐藏quot; 的高级搜索技巧
相信大多数人用搜索引擎(百度.谷歌.搜狗.360.BING--)搜索内容时,通常都是直接输入要搜索内容的关键词,有时候为了找到你需要的内容,要一个一个链接打开看,一页一页翻,这样很浪费时间. 其实各大 ...
- ◆百度百科 for Mdict ◆ 2010年4月版 百度百科离线版 百度百科单机版
百度百科离线版 百度百科单机版 百度百科手机版 百度百科 for Mdict 文件名: baike2010.mdx 文件大小: 2.43 GB (2,613,635,878 字节) HASH值: ...
- 怎么做品牌百度百科,品牌信息怎么上传到百度百科上
不少品牌想将关于品牌的介绍信息上传到百度百科,但是创建品牌百度百科却屡屡受挫,品牌百度百科一直创建不上去,下面洛希爱做百科网分享下品牌信息怎么上传到百度百科上. 只要有营业执照的企业和注册了商标的品牌 ...
- python交互式方式、代码文件方式_涨见识了,在终端执行 Python 代码的 6 种方式
原作:BRETT CANNON 译者:豌豆花下猫@Python猫 英文:https://snarky.ca/the-many-ways-to-pass-code-to-python-from-the- ...
- python金融大数据分析师工资待遇_三年工作经验大佬带你解读 Python金融大数据分析...
内容提要: Python凭借其简单.易读.可扩展性以及拥有巨大而活跃的科学计算社区,在需要分析.处理大量数据的金融行业得到了广泛而迅速的应用,并且成为该行业开发核心应用的首选编程语言.本书提供了使用P ...
- python语言的使用不需要付费_人生不值得,我在用python.1_关于python
一直喜欢编程,最近决定潜心入坑.起初一直在研究要学什么语言,想过c语言,学过VB(两天...),后来听说了python,功能强大,并且适合小白入手.文笔不行,但还是申请了博客号,以便记录.发表自己的所 ...
- scrapy 搜索关键字_解析搜索引擎抓取网站目标关键词原理
一个网站有几百甚至几千个关键词,怎么让搜索引擎知道网站的目标关键词是什么呢? 解析搜索引擎抓取网站目标关键词原理 一.网站标题(Title),网站标题是搜索引擎最重视的部分,通常情况下,无论网站是否存 ...
最新文章
- socket的阻塞非阻塞方法在缓冲区的差别
- 函数声明与函数表达式
- Linux内存buffer和cache的区别
- C/C++指针与内存管理
- 去中心化钱包CoinU诞生 黑客攻不破的铜墙铁壁
- 图像坐标:我想和世界坐标谈谈(B)
- MySQL——binlog,redo log
- 前端学习(1709):前端系列javascript之uniapp
- c语言常用算法累加法例题,C语言第三次模拟练习题部分解答.docx
- java in action,java 7 in action
- Composer自动加载(一)
- OpenShift Security (11) - 用RHACS在DevOps的CICD中扫描部署中的安全风险
- JavaEE的核心API与组件
- 项目遇到的问题总结(四):单页面首屏加载慢解决方案
- vb.net 使用MD5密碼加密
- python接口测试覆盖率统计_pytest文档57-计算单元测试代码覆盖率(pytest-cov)
- 西点军校的经典法则[转]
- cknife连接失败
- 云计算平台是什么意思?可以划分为哪三类?
- SitePoint播客#108:Kevin的最后一场演出
热门文章
- foreach 循环达到条件的第一次就停止_是否应该停止在JavaScript代码中使用forEach()?...
- 一个计算机台式机的组装方案,既能带又便宜的电脑组装方案,华擎deskmini310组装晒单...
- php打包压缩下载多大,php多文件打包压缩下载简单示例
- 基于wrapper的特征选择——递归特征消除RFE的python实现
- 数字图像处理 第二章 图像处理基础
- Matlab——对比度拉伸
- Java加密与解密的艺术~数字证书~证书使用openssl
- 掌控谈话~谈价格的秘诀
- mysql联合索引和单索引_mysql联合索引跟单列索引的区别
- Java 线程状态---WAITING(部分转载)