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编写Linux系统守护进程实例
Feb 03 Python
初步理解Python进程的信号通讯
Apr 09 Python
Python中关于Sequence切片的下标问题详解
Jun 15 Python
Python编程scoketServer实现多线程同步实例代码
Jan 29 Python
numpy中实现ndarray数组返回符合特定条件的索引方法
Apr 17 Python
django用户登录和注销的实现方法
Jul 16 Python
django之跨表查询及添加记录的示例代码
Oct 16 Python
Python3.4学习笔记之 idle 清屏扩展插件用法分析
Mar 01 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
Apr 17 Python
通过python扫描二维码/条形码并打印数据
Nov 14 Python
Django def clean()函数对表单中的数据进行验证操作
Jul 09 Python
python性能测试工具locust的使用
Dec 28 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
在PHP3中实现SESSION的功能(三)
2006/10/09 PHP
PHP自定义函数收代码
2010/08/01 PHP
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
2011/11/21 PHP
PHP数据库万能引擎类adodb配置使用以及实例集锦
2014/06/12 PHP
PHP遍历目录函数opendir()、readdir()、closedir()、rewinddir()总结
2014/11/18 PHP
php通过执行CutyCapt命令实现网页截图的方法
2016/09/30 PHP
php防止sql注入的方法详解
2017/02/20 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
用倒置滤镜把div倒置,再把table倒置。
2007/07/31 Javascript
fix-ie5.js扩展在IE5下不能使用的几个方法
2007/08/20 Javascript
Javascript 定时器调用传递参数的方法
2009/11/12 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
Windows系统下使用Sublime搭建nodejs环境
2015/04/13 NodeJs
JS实现设置ff与ie元素绝对位置的方法
2016/03/08 Javascript
js事件驱动机制 浏览器兼容处理方法
2016/07/23 Javascript
input框中的name和id的区别
2016/11/16 Javascript
浅析JavaScriptSerializer类的序列化与反序列化
2016/11/22 Javascript
React Native仿美团下拉菜单的实例代码
2017/08/08 Javascript
详解用Node.js实现Restful风格webservice
2017/09/29 Javascript
webpack组织模块打包Library的原理及实现
2018/03/10 Javascript
详解react-redux插件入门
2018/04/19 Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
2019/09/03 Javascript
详解Python的Django框架中的中间件
2015/07/24 Python
Python 实现12306登录功能实例代码
2018/02/09 Python
基于Django用户认证系统详解
2018/02/21 Python
使用pandas将numpy中的数组数据保存到csv文件的方法
2018/06/14 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
2019/02/27 Python
DataFrame.groupby()所见的各种用法详解
2020/06/14 Python
matplotlib基础绘图命令之errorbar的使用
2020/08/13 Python
canvas实现有递增动画的环形进度条的实现方法
2019/07/10 HTML / CSS
诉讼代理人授权委托书
2014/10/11 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
python - asyncio异步编程
2021/04/06 Python
React自定义hook的方法
2022/06/25 Javascript