Python爬虫实现(伪)球迷速成


Posted in Python onJune 10, 2018

Python爬虫实现(伪)球迷速成

还有4天就世界杯了,作为一个资深(伪)球迷,必须要实时关注世界杯相关新闻,了解各个球队动态,这样才能在一堆球迷中如(大)鱼(吹)得(特)水(吹),迎接大家仰慕的目光!

给大家分享一个快速了解相关信息的办法:刷论坛!我们来一起做个虎扑论坛的爬虫吧!

抓包获取虎扑论坛相关帖子内容,逐条显示!

先来观察下网页,打开论坛首页,选择国际足球

Python爬虫实现(伪)球迷速成

然后往下拉,找到世界杯相关内容

Python爬虫实现(伪)球迷速成 

这里就是我们的目标了,所有相关的新闻都会在这里显示,用F12打开“开发者工具”然后往下浏览看看数据包

Python爬虫实现(伪)球迷速成

注意箭头指向的那几个地方!

这就是刚才浏览的新闻所在的json包,来看看具体数据是什么

Python爬虫实现(伪)球迷速成

ok,标题、地址、发布时间包括来源都已经出现了!我们可以直接抓取json数据然后取出相关内容!

再进入具体新闻页面看看

世界杯快到了,看我用Python爬虫实现(伪)球迷速成! 

所有的文本内容,都在<div class="artical-main-content">这个标签下的<p></p>标签内,我们可以用xpath直接取div下的所有文本内容!

这里就不一 一说明了,直接上代码,并录个小的GIF图片给大家看看效果

#Q群542110741
# -*- coding:utf-8 -*-
import requests
from lxml import etree

header = {
  'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101 Firefox/60.0',
  'Host':'soccer.hupu.com',
  'Referer':'https://soccer.hupu.com/'}
i = 0
while 1:
  #构建循环页面翻页
  url = 'https://soccer.hupu.com/home/latest-news?league=世界杯&page='
  i += 1
  #获取json数据,一页20个
  html = requests.get(url+str(i),headers=header).json()['result']
  for info in html:
    time_r = info['time']#发布时间
    title = info['title']#标题
    url_r = info['url']#新闻链接
    origin = info['origin']#来源
    print(title)
    print('发布时间:',time_r,' '*5,'来自:',origin)
    head = header
    head['Host'] = 'voice.hupu.com'#更改header中Host参数
    html_r = requests.get(url_r,headers=head)#获取新闻详情
    html_r.encoding = 'utf-8'#编码格式指定
    #获取div下的所有文本
    datas = etree.HTML(html_r.text).xpath('//div[@class="artical-content-read"]')[0].xpath('string(.)').strip()
    print('\n'+'内容:'+'\n'*2,datas,'\n')
    #可由用户手动退出循环
    if input('任意键继续,“q”退出') in ['q', 'Q']:
      exit()

总结

以上所述是小编给大家介绍的Python爬虫实现(伪)球迷速成,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
Python基本语法经典教程
Mar 11 Python
python3批量删除豆瓣分组下的好友的实现代码
Jun 07 Python
python实现kMeans算法
Dec 21 Python
浅谈pytorch和Numpy的区别以及相互转换方法
Jul 26 Python
python操作kafka实践的示例代码
Jun 19 Python
python脚本开机自启的实现方法
Jun 28 Python
在Python函数中输入任意数量参数的实例
Jul 16 Python
python获取网络图片方法及整理过程详解
Dec 20 Python
Python 高效编程技巧分享
Sep 10 Python
Django和Ueditor自定义存储上传文件的文件名
Feb 25 Python
Django rest framework如何自定义用户表
Jun 09 Python
详解Python+OpenCV进行基础的图像操作
Feb 15 Python
python利用微信公众号实现报警功能
Jun 10 #Python
Python if语句知识点用法总结
Jun 10 #Python
Python continue继续循环用法总结
Jun 10 #Python
Python求解任意闭区间的所有素数
Jun 10 #Python
Python学习小技巧总结
Jun 10 #Python
python计算两个地址之间的距离方法
Jun 09 #Python
python 对dataframe下面的值进行大规模赋值方法
Jun 09 #Python
You might like
php计算两个整数的最大公约数常用算法小结
2015/03/05 PHP
PHP的mysqli_ssl_set()函数讲解
2019/01/23 PHP
PHP 构造函数和析构函数原理与用法分析
2020/04/21 PHP
js 函数的执行环境和作用域链的深入解析
2009/11/01 Javascript
javascript window.opener的用法分析
2010/04/07 Javascript
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
jquery无缝向上滚动实现代码
2013/03/29 Javascript
jquery常用特效方法使用示例
2014/04/25 Javascript
Js实现无刷新删除内容
2015/04/29 Javascript
js如何编写简单的ajax方法库
2017/08/02 Javascript
利用原生js实现html5小游戏之打砖块(附源码)
2018/01/03 Javascript
vue的过滤器filter实例详解
2018/09/17 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
2019/04/02 Javascript
Async/Await替代Promise的6个理由
2019/06/15 Javascript
Vue如何使用混合Mixins和插件开发详解
2020/02/05 Javascript
javascript设计模式 ? 代理模式原理与用法实例分析
2020/04/16 Javascript
python根据文件大小打log日志
2014/10/09 Python
在Python中操作字典之clear()方法的使用
2015/05/21 Python
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
python pandas模块基础学习详解
2019/07/03 Python
Python Pandas 箱线图的实现
2019/07/23 Python
python自动化工具之pywinauto实例详解
2019/08/26 Python
Pyecharts 动态地图 geo()和map()的安装与用法详解
2020/03/25 Python
VSCode配合pipenv搞定虚拟环境的实现方法
2020/05/17 Python
在python中使用pyspark读写Hive数据操作
2020/06/06 Python
keras的siamese(孪生网络)实现案例
2020/06/12 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
帕克纽约:PARKER NY
2018/12/09 全球购物
adidas马来西亚官网:adidas MY
2020/09/12 全球购物
android面试问题与答案
2016/12/27 面试题
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
JAVA程序设计笔试题面试题一套
2015/07/28 面试题
农村党员一句话承诺
2014/05/30 职场文书
幼儿教师师德师风演讲稿
2014/08/22 职场文书
预备党员转正党小组意见
2015/06/01 职场文书
python实现A*寻路算法
2021/06/13 Python