怎么加载csv_python爬虫入门实战(四)!爬取动态加载的页面

今天的主题是爬取动态网页的经验分享,以cocos论坛为例子进行分享。(官方不会打我吧 )

0b3fe4b5cf472d60ba9e02cd742d8daf.png

配置环境

为什么选择cocos论坛呢?因为自己在浏览论坛时,发现标题内容会随着滚动条的位置而动态添加。

81a20499436fec19b87ff5c330ce6b90.gif

环境: python3 + requests 。还要引入几个系统库。参考如下:

708d6a1be3a17dd185a70983ef2f3822.png

分析网页

以chrome浏览器为例,空白处 右键->检查 进入网页分析模式,选择 Network 中的XHR,滚动条往下滚,观察右侧加载了什么文件。

96c3ff5f4ad701e6daf9d560305d1ee3.gif

在网页分享模式下,点击刚才下载的文件,查看里面的内容,发现对一个地址使用了GET方法,并传入了页码的参数。

bc929875fb53aa6f7d3e84abafbdfe98.png

再看看返回的内容是一个json字符串。

e3f4b55eb82429b81c9f84903201e6a9.png

这个 json字符串里就有我们想要内容。一起看下如何用requests 发送参数,并返回Json 结果。

2d7fb68d400f7f384b6d72150bd0e1c8.png

只需要根据地址,传入一个 headers 告诉网页我们要接收json字符串。

解析json

json是一种数据存储格式,可以被多种语言解析,一般用于数据传输。

由前一张图,可以看到所有文章列表在topic_list的topics中,一起看看 python3 是怎么解析的。

8cc9fc75d0a47d9f8bebbd697893d119.png

其中的链接地址可以通过打开几个论坛内容找到规律,是由 slug 和 id 这两个字段拼接的。

5ffca50ef0be4ecc4865c55945e9ccb8.png

最后使用多线程 和 csv 存储结果。(不清楚的话可以看看之前的文章哦。python爬虫入门实战(三)不会正则怎么办?xpath分分钟搞定 和 python爬虫入门实战(二)!快!快!快!让爬虫赢在起跑线!多线程)

daf65e4df00597cb577cd9148ed7dd9d.png

最后,看看最终效果吧!

43c7b913c5f0bc0420fe441253f31465.png

小结

对于动态生成的内容,我们可以通过网页分享中下载的文件分析,并通过requests模块模拟headers 和发送参数方法获取数据。

这是我学到的新技能哦!如有错误或其他想法,欢迎留言!如果我又学到新的东西,会第一时间分享给大家哦!点个关注不迷路!


以上内容仅供个人学习使用,请勿用于商业用途。


我是白玉无冰,游戏开发小赤佬,也玩python和shell

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/522104.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

再谈全局网HBase八大应用场景

摘要: HBase可以说是一个数据库,也可以说是一个存储。拥有双重属性的HBase天生就具备广阔的应用场景。在2.0中,引入了OffHeap降低了延迟,可以满足在线的需求。引入MOB,可以存储10M左右的对象,完全适应了对象…

文件标识符必须为双精度类型的整数值标量_数据类型

标识符在Java中,标识符多用于类名、方法、字段、变量和包名等,他的命名方式需遵循以下规则:1、标识符可以由字母、数字、__、$组成,但不能包含!、#、%、空格等其他特殊字符。2、标识符的命名最好做到见名知意。3、不能…

MSSQL · 最佳实践 · 利用文件组实现冷热数据隔离备份方案

摘要: 摘要 在SQL Server备份专题分享中,前四期我们分享了:三种常见的数据库备份、备份策略的制定、如何查找备份链以及数据库的三种恢复模式与备份之间的关系。本次月报我们分享SQL Server如何利用文件组技术来实现数据库冷热数据隔离备份的…

检测到会话cookie中缺少HttpOnly属性

解决方案01:在会话cookie中添加HttpOnly属性 具体操作步骤如下: HttpServletResponse response2 (HttpServletResponse)response; response2.setHeader( "Set-Cookie", "namevalue; HttpOnly");解决方案02(建议使用&am…

刷抖音看到 Python 工程师的工资条后,我沉默了...

戳蓝字“CSDN云计算”关注我们哦!最近无意中刷抖音刷到了一个Python工程师的工资条然后我默默的打开看了然后我默默的关闭了emmm.....后悔为什么我当时没有坚持做开发相信每一个人都想拿着高工资做着轻松的工作而如今Python技术盛行大家都纷纷学Python我不能跟你确保…

怎么将sql语句转化成语法树_数据库如何解析执行SQL

阅读文本大概需要3分钟。0x01:数据库客户端发送查询SQL客户端将查询的select sql,按照mysql通信协议传输到数据库服务。数据库服务接受查询sql,执行sql前判断要执行的sql是否是查询语句。0x02:查询缓存先行MySQL在开启查询缓存的情…

佛系程序员的月薪五万指南

摘要: 大师:很简单,我这里有一份佛系月薪 5 万指南,我看你骨骼清奇、脑门光亮,一看就是将要大富大贵之人,这份指南可以助你快速实现小目标!程序员问大师…… 青年:大师,你…

数据用压缩 bcd 码 java_IT职场新人选python,go还是java?用数据来说话

最近有读者在后台问,刚参加工作,想选一个职业方法,问我现在python很火,但是貌似就业机会不是很多,所以比较纠结现在到底是学python,go还是java. 所以我就想我们能不能用数据说话,看看python,go,java这三种热…

点击劫持:X-Frame-Options未配置

解决方案:设置X-Frame-Options参数即可 具体操作步骤如下: 在上面filter基础上添加即可解决 httpResp.addHeader("x-frame-options","DENY");附上源码: package com.sinosoft.fis.util;import java.io.IOException; im…

实战:阿里巴巴 DevOps 转型后的运维平台建设

摘要: 阿里巴巴DevOps转型之后,运维平台是如何建设的?阿里巴巴高级技术专家陈喻结合运维自身的理解,业务场景的分析和业界方法论的一些思考,得出来一些最佳实践分享给大家。 前言 “我是这个应用的 Owner”是阿里巴巴D…

华为方舟编译器开源官网正式上线:源代码已开放下载;中兴通讯与北京交通大学、中国移动北京公司签署 “5G战略合作框架协议”……...

关注并标星星CSDN云计算极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周三次,打卡即read更快、更全了解泛云圈精彩newsgo go go 德创企“空中出租车”首次在…

使用云效在阿里云上进行一站式开发运维

摘要: 云效,一站式企业协同研发云,提供从“需求->开发->测试->发布->运维->运营”端到端的协同服务和研发工具支撑。云效将计划与其他云产品合作,进一步优化一站式体验。 导读 作为一站式企业协同研发云,云效提供…

list按照某个字段排序_恕我直言你可能真的不会java第7篇:像使用SQL一样排序集合

在开始之前,我先卖个关子提一个问题:我们现在有一个Employee员工类。 Data AllArgsConstructor public class Employee {private Integer id;private Integer age; //年龄private String gender; //性别private String firstName; private String la…

直播内容不合规怎么办?智能AI为您解决审核难题

摘要: 近些年来,视频直播快速发展,大量的直播平台如雨后春笋一般出现,但是这同样给直播内容的监管带来了巨大的挑战,一方面国家对于直播内容监管的要求日益严格,另一方面相对于文字内容的审核,多…

关闭word_Word文档如何快速查找?超实用的5个Word技巧教给你

Word,是我们每天用的最基础的一款办公软件了。大到方案的流程,小到名单输入,word都是我们最实用也最普遍的工具了。但是正是因为word这样的普遍性,所以我们有许多工作要在word上完成。......但是有时候工作量的问题却让我们加班到…

实战: 如何掌握Oracle和业务IO知识

作者 | Hardy来源 | 架构师技术联盟今天,笔者打算梳理下Oracle架构相关的知识,让读者快速全面掌握Oracle和大数据领域知识。Oracle系统结构由内存结构、物理和逻辑结构等几个部分组成。其中,与阵列密切相关的物理结构包括数据文件、控制文件、…

阿里云朱照远:AI打开新视界 8K时代已来!

摘要: 2018年4月11-12日,2018亚太CDN峰会在北京隆重召开,大会由亚太CDN领袖论坛、电视云论坛、短视频论坛、视频云论坛、新技术论坛、运营商论坛、国际云论坛等7大部分组成。在亚太CDN领袖峰会上,阿里视频云总经理朱照远&#xff…

星外主机销售系统源码_业务员大客户销售订货订单管理系统源码开发外包解析...

互联网IT外包15年,讲述外包那些事;让您外包项目少花钱,办好事!IT外包最大隐形成本-沟通成本:客户叙述大概需求,IT公司说一做一,最后开发项目细节大堆BUG,毫无用户体验感,最后项目一拖再拖,无限延期!究其原因,客户非IT行内人,对系统功能及流程…

两个分布的特征映射_跨语言分布表示学习方法概述

分布表示(distributed representation)与深度神经网络(deep neural network)极大地推动了近几年自然语言处理研究的发展。我们知道,分布表示指的是对于一个客观描述对象的低维、稠密、连续向量表示。不同于符号表示(symbolic representation),分布表示可…

2018亚太CDN峰会开幕,阿里云王海华解读云+端+AI的短视频最佳实践

摘要: 4月11-12日,2018亚太CDN峰会在北京隆重召开,在11日下午的短视频论坛中,阿里云高级技术专家王海华进行了《短视频最佳实践:云端AI》的主题演讲,分享了短视频的生命周期关键点和阿里云技术解决方案。 4…