首页 文章 精选 留言 我的

精选列表

搜索[开源协作平台],共10000篇文章
优秀的个人博客,低调大师

Python---20行代码爬取斗鱼平台房间数据(上)

本期用到json,requests库来爬取网页信息,这次爬的是一个特殊多页式网站,普通多页式网站只需分析不同页面的url,找出其中的不同点,用for in来循环即可,但是斗鱼的https://www.douyu.com/directory/game/LOL中不同页面都是相同的url,这就需要去“F12”来寻找其中的区别。 工具.环境:Python3.6.5,Pycharm,windows10,Firefox douyuTV 1.首先来寻找不同页面的区别 以斗鱼的LOL板块为例:https://www.douyu.com/directory/game/LOL 尝试切换不同页面都是相同的url,那怎么办呢?????????? 按F12呼出开发者工具(在这推荐使用Firefox或chrome浏览器,我用的是Firefox) 开发者工具 要详细学习开发者工具的请自行百度,这里直接选择 网络,会看到很多数据,数据发送方法分两种,为“post”and“get”。再选择 XHR,点击左上角的删除键,再重新载入网页,就会看到电脑又向服务器发送了多个请求。 网络-XHR 再重复多换几个页面,发现每次换的页码都与其中一个请求名相同 发现不同 点击该条信息,在右边显示该条信息的 消息头,有一个请求网址 https://www.douyu.com/gapi/rkc/directory/2_1/3,把它复制下来,发现末尾的3就是对应的页数。 OK 第一步结束! 2.get页面信息 打开1中get到的网址https://www.douyu.com/gapi/rkc/directory/2_1/3 JSON 发现里面有我想要爬取的斗鱼房间信息,那么就是它了,接下来要对它进行解剖。 (1)运用requests来get该网页的信息 import requests import json urls = ['https://www.douyu.com/gapi/rkc/directory/2_1/{}'.format(page) for page in range(1, 5)] for url in urls: res = requests.get(url) print(res.text) # 可以想先看看get到的是个什么东西 这里运用for in循环来get到1-5页的网页信息for page in range(1, 5),具体见上面代码 (2)运用json库来将已编码的 JSON 字符串解码为 Python 对象 import requests import json urls = ['https://www.douyu.com/gapi/rkc/directory/2_1/{}'.format(page) for page in range(1, 5)] for url in urls: res = requests.get(url) j = json.loads(res.text) print(j) # 可以看到已解码的对象 json.dumps:将 Python 对象编码成 JSON 字符串json.loads:将已编码的 JSON 字符串解码为 Python 对象 3.处理对象数据 对象数据 看到了一堆糊糊,这时Firefox的优势就体现出来了 json 可以看到各层的所属关系,便于接下来的提取数据,下面是完整代码: import requests import json urls = ['https://www.douyu.com/gapi/rkc/directory/2_1/{}'.format(page) for page in range(1, 5)] for url in urls: res = requests.get(url) j = json.loads(res.text) l1 = j['data'] # 通过观察可以发现要的数据在data下 l2 = l1['rl'] #在观察发现在data的rl中 tplt = '{0:{4}<20}\t{1:<12}\t{2:{4}<25}\t{3:<12}' print(tplt.format('主播', '房间号', '房间名', '热度', chr(12288))) for i in range(len(l2)): # 这里用到for循环来处理一个列表下多个字典的数据 Anchor = l2[i]['nn'] # 获取主播名字 RoomNumber = l2[i]['rid'] # 获取房间号 Heat = l2[i]['ol'] # 获取热度 RoomName = l2[i]['rn'] # 获取房间名 print(tplt.format(Anchor, RoomNumber, RoomName, Heat, chr(12288))) 4.结果 运行程序 斗鱼LOL板块房间数据 下篇:如何将数据导入Excel教程 遇到的问题:在名字中出现中英文混合的字符,会出现对不了齐的问题,有解决方法的可以在评论区分享!谢谢 发现错误的可以大力提出,一起交流学习

优秀的个人博客,低调大师

视+AR正式发布EasyAR引擎2.0版,并宣布开放AR相机平台

EasyAR SDK分为Basic和Pro两个版本,其中Basic版本免费,Pro版本收费,提供免费试用。 近日,视+AR正式发布EasyAR SDK 2.0。新版本加入了3D物体跟踪、SLAM、录屏功能,同时还上线了EasyAR CRS (云识别服务),目前EasyAR SDK 2.0已在EasyAR官网开放下载, EasyAR官网宣告新品发布 EasyAR官网显示EasyAR SDK分为Basic和Pro两个版本,其中Basic版本免费,Pro版本收费,提供免费试用。 新上线的EasyAR SDK 2.0提供两个子版本:EasyAR SDK Basic和EasyAR SDK Pro。EasyAR SDK 2.0 Basic是对以往EasyAR SDK的全新升级但依然免费。在延续了之前版本的所有功能同时,改进了工作流、支持更多的编程语言。EasyAR SDK Pro则是收费版本,售价2999元/个应用,但开发者可免费试用,Pro版本在Basic版本基础上,增加了很多开发者翘首以待的全新功能: 1.3D物体识别、跟踪:对日常生活中的常见有纹理3D物体进行实时识别与跟踪。 2.SLAM(即时定位与地图构建):不依赖于特殊硬件,在常规手机上即可以进行基于单目相机的实时6自由度姿态跟踪。。 3.高效易用的录屏功能:无需第三方插件、同时提供丰富可调参数。 这些领先市场的新功能将极大地扩展AR开发者的发挥空间,可以预见用EasyAR开发的应用将更多。 与EasyAR SDK 2.0同时发布的还有EasyAR CRS云端图像识别服务,开发者可以在云端动态管理识别图,在SDK中通过对应API即可使用云服务识别云端存储的识别图,并从云端获取和识别图相关联的数据信息,而此举将大大推进AR内容制作和体验升级。EasyAR SDK 2.0和EasyAR CRS的发布或许将成为AR发展史上的一个里程碑 此外,据了解,即将在美国圣何塞市举办的2017世界增强现实博览会(AWE2017)上,视+AR首席引擎架构师宋健将面向全球开发者介绍并演示EasyAR SDK 2.0的全新特性和公布其他计划。 原文发布时间: 2017-06-01 17:31 本文作者: 镁客网 本文来自云栖社区合作伙伴镁客网,了解相关信息可以关注镁客网。

优秀的个人博客,低调大师

数据认知的高度,决定了工业云互联网平台的上限!

关于物联网是否还是新鲜事物的争论一直不休。支持者惊讶于它推陈出新的理念思路和对未来的野心;看衰者着眼于它内在技术的平淡无奇,以及未来的不确定性。 然而不可否认的是,物联网已成为许多行业在发展或转型中“避无可避”的话题了。从概念争议,到实践尝试,从创新试错到升级求变,物联网被诸多传统行业探索和验证了更多未知的潜能。并在相互渗透的过程中,改变着旧的运营业态,推进行业进入全新的成长阶段。甚有幸者,或许还塑造出完全颠覆的市场格局和商业模式。 从这个角度来讲,第四次科技革命的潜力值得期待。并且,这种潜力在一些行业中,已经走在被验证的路上。其中走的最快、看的最远、同时最具规模和说服力的,非工业领域莫属。那么,工业物联网如今走到了什么阶段?两者的结合是如何相互提升彼此的?这些实践成果或能为物联网看衰者、观望者增添些信心。 对于工业而言,物联网的出现像

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册