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设计模式之代理模式实例
Apr 26 Python
Python字典操作简明总结
Apr 13 Python
window下eclipse安装python插件教程
Apr 24 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
Sep 08 Python
python中从str中提取元素到list以及将list转换为str的方法
Jun 26 Python
PyTorch 1.0 正式版已经发布了
Dec 13 Python
详解如何在Apache中运行Python WSGI应用
Jan 02 Python
使用python3构建文件传输的方法
Feb 13 Python
Python使用统计函数绘制简单图形实例代码
May 15 Python
python 多维高斯分布数据生成方式
Dec 09 Python
python实现简单的学生管理系统
Feb 22 Python
Python制作春联的示例代码
Jan 22 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
从性能方面考虑PHP下载远程文件的3种方法
2015/12/29 PHP
PHP设计模式之单例模式定义与用法分析
2019/03/26 PHP
javascript实现划词标记+划词搜索功能
2007/03/06 Javascript
JS常用正则表达式总结
2013/11/12 Javascript
jquery选择器之属性过滤选择器详解
2014/01/27 Javascript
用jquery模仿的a的title属性的例子
2014/10/22 Javascript
js中匿名函数的创建与调用方法分析
2014/12/19 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
2015/11/30 Javascript
谈谈AngularJs中的隐藏和显示
2015/12/09 Javascript
一些实用性较高的js方法
2016/04/19 Javascript
详解js的异步编程技术的方法
2017/02/09 Javascript
javascript实现日期三级联动下拉框选择菜单
2020/12/03 Javascript
nodeJS实现简单网页爬虫功能的实例(分享)
2017/06/08 NodeJs
详解基于vue-router的动态权限控制实现方案
2017/09/28 Javascript
vue下拉列表功能实例代码
2018/04/08 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
2019/01/06 Javascript
详解如何更好的使用module vuex
2019/03/27 Javascript
微信小程序实现购物车小功能
2020/12/30 Javascript
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
python实现微信自动回复功能
2018/04/11 Python
Python使用分布式锁的代码演示示例
2018/07/30 Python
PyQt5实现简易电子词典
2019/06/25 Python
python获取引用对象的个数方式
2019/12/20 Python
opencv python Canny边缘提取实现过程解析
2020/02/03 Python
html5借用repeating-linear-gradient实现一把刻度尺(ruler)
2019/09/09 HTML / CSS
ebookers英国:隶属全球最大的在线旅游公司Expedia
2017/12/28 全球购物
雷蛇美国官网:Razer
2020/04/03 全球购物
课程设计心得体会
2013/12/28 职场文书
医学生个人求职信范文
2014/02/07 职场文书
教师远程培训感言
2014/03/06 职场文书
医学专业大学生职业生涯规划书
2014/10/25 职场文书
计生个人工作总结
2015/02/28 职场文书
永不妥协观后感
2015/06/10 职场文书
学雷锋感言
2015/08/03 职场文书
《只有一个地球》教学反思
2016/02/16 职场文书
教你利用Nginx 服务搭建子域环境提升二维地图加载性能的步骤
2021/09/25 Servers