python获取百度热榜链接的实例方法


Posted in Python onAugust 25, 2020

目标网址:

https://www.baidu.com/

要获取的内容:

python获取百度热榜链接的实例方法

链接分析:

从下图可以看出只需要获取关键字,再构建就可以了。

python获取百度热榜链接的实例方法

完整代码:

import requests
import pprint
import re
import urllib.parse

url = 'https://www.baidu.com/'

headers = {
    'Host': 'www.baidu.com',
    'Referer': 'https://www.baidu.com/',
    'User-Agent': 你的User-Agent,
    'Cookie': 你的Cookie
}

response = requests.get(url, headers=headers).content.decode('utf-8')
# 获取关键字
pat = '"pure_title": "(.*?)"'
keyword = re.findall(pat, response, re.S)
print(len(keyword))

for hot_word in keyword:
    # 汉字不符合url标准,所以这里需要进行url编码
    i = urllib.parse.quote(hot_word, encoding='utf-8', errors='replace')
    # url构建
    link = f'https://www.baidu.com/s?cl=3&tn=baidutop10&fr=top1000&wd={i}&rsv_idx=2&rsv_dl=fyb_n_homepage&hisfilter=1'
    print(link)

你会发现结果很长:

python获取百度热榜链接的实例方法

但其实关键字后面的几个参数是可以去掉的,这样url就没有那么长了。

python获取百度热榜链接的实例方法

内容扩展:

python 爬取简单的百度搜索结果

爬取百度搜索结果

主要还要借助xpath helper谷歌浏览器的插件来操作更容易找到需要查找信息的xpath位置

还要首先了解一下百度搜索请求的参数 lm默认为0,天数限制,但是好像只有1有用。

默认每页10条信息,rn

pn是页码

from lxml import etree
import re
import requests
import string
import json
headers = {
  "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
}
response = requests.get('https://www.baidu.com/s?wd=腾讯视频优惠&lm=1',headers=headers)
r = response.text
html = etree.HTML(r,etree.HTMLParser())
r1 = html.xpath('//h3')
r2 = html.xpath('//*[@class="c-abstract"]')
r3 = html.xpath('//a[@class="c-showurl"]')
for i in range(10) :
  r11 = r1[i].xpath('string(.)')
  r22 = r2[i].xpath('string(.)')
  r33 = r3[i].xpath('string(.)')
  # with open('test.txt', 'a', encoding='utf-8') as f:
  #   f.write(json.dumps(r11,ensure_ascii=False) + '\n')
  #   f.write(json.dumps(r22, ensure_ascii=False) + '\n')
  #   f.write(json.dumps(r33, ensure_ascii=False) + '\n')
  print(r11,end='\n')
  print(r22,end='\n')
  print(r33)
  print()

到此这篇关于python获取百度热榜链接的实例方法的文章就介绍到这了,更多相关教你用python获取百度热榜链接内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现简单的TCP代理服务器
Oct 08 Python
python读取word文档的方法
May 09 Python
详解Python中最难理解的点-装饰器
Apr 03 Python
Python使用re模块正则提取字符串中括号内的内容示例
Jun 01 Python
使用Python获取并处理IP的类型及格式方法
Nov 01 Python
Python字符串对象实现原理详解
Jul 01 Python
python如何实现从视频中提取每秒图片
Oct 22 Python
Python如何在DataFrame增加数值
Feb 14 Python
Python3批量创建Crowd用户并分配组
May 20 Python
python opencv 实现读取、显示、写入图像的方法
Jun 08 Python
Django DRF认证组件流程实现原理详解
Aug 17 Python
Python爬虫如何破解JS加密的Cookie
Nov 19 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
Aug 24 #Python
python实现自动清理重复文件
Aug 24 #Python
anaconda3安装及jupyter环境配置全教程
Aug 24 #Python
Python+pyftpdlib实现局域网文件互传
Aug 24 #Python
实例代码讲解Python 线程池
Aug 24 #Python
详解python UDP 编程
Aug 24 #Python
PyTorch如何搭建一个简单的网络
Aug 24 #Python
You might like
DC动画很好看?新作烂得令人发指,名叫《红色之子》
2020/04/09 欧美动漫
PHP数组内存耗用太多问题的解决方法
2010/04/05 PHP
php生成年月日下载列表的方法
2015/04/24 PHP
什么是OneThink oneThink后台添加插件步骤
2016/04/13 PHP
PHP内置加密函数详解
2016/11/20 PHP
浅谈PHP中的面向对象OOP中的魔术方法
2017/06/12 PHP
php从数据库中获取数据用ajax传送到前台的方法
2018/08/20 PHP
Javascript实例教程(19) 使用HoTMetal(4)
2006/12/23 Javascript
用dtree实现树形菜单 dtree使用说明
2011/10/17 Javascript
最佳6款用于移动网站开发的jQuery 图片滑块插件小结
2012/07/20 Javascript
Jquery 的outerHeight方法使用介绍
2013/09/11 Javascript
js Array操作的最简短最容易理解方法
2013/12/09 Javascript
JS获取计算机mac地址以及IP的实现方法
2014/01/08 Javascript
JavaScript对象的property属性详解
2014/04/01 Javascript
JQuery日历插件My97DatePicker日期范围限制
2016/01/20 Javascript
微信小程序 生命周期详解
2016/10/12 Javascript
Web前端框架bootstrap实战【第一次接触使用】
2016/12/28 Javascript
seajs实现强制刷新本地缓存的方法分析
2017/10/16 Javascript
react-native android状态栏的实现
2018/06/15 Javascript
JavaScript捕捉事件和阻止冒泡事件实例分析
2018/08/03 Javascript
[33:23]VG vs Pain 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
初学Python函数的笔记整理
2015/04/07 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
Python实现曲线点抽稀算法的示例
2017/10/12 Python
python中for用来遍历range函数的方法
2018/06/08 Python
详解Python最长公共子串和最长公共子序列的实现
2018/07/07 Python
python的等深分箱实例
2019/11/22 Python
用Python自动清理电脑内重复文件,只要10行代码(自动脚本)
2021/01/09 Python
中国领先的专业演出票务网:永乐票务
2016/08/29 全球购物
HomeAway的巴西品牌:Alugue Temporada
2018/04/10 全球购物
马来西亚最大的在线隐形眼镜商店:MrLens
2019/03/27 全球购物
初中优秀学生评语
2014/12/29 职场文书
检讨书范文
2015/01/27 职场文书
租赁协议书
2015/01/27 职场文书
MySQL中的布尔值,怎么存储false或true
2021/06/04 MySQL
Redis命令处理过程源码解析
2022/02/12 Redis