当前位置: 首页 > news >正文

python爬取js_python如何爬取js生成的数据?

回答中有童鞋说到了分析接口,直接爬接口,这是可行的,并且直接爬接口还不需要自己解析HTML了,因为大部分接口返回的都是json,想想都觉得开心呀~

不过还是有别的方法,例如使用Phantomjs,简单易用,Python并非全能,搭配其他工具会发挥更大的价值,我自己也有一些小项目是这样的组合。

这是官方的一个实例代码,稍加改造就可以达成目的了。

console.log('Loading a web page');

var page = require('webpage').create();

var url = 'http://phantomjs.org/';

page.open(url, function (status) {

//Page is loaded!

phantom.exit();

});

改造下

var page = require('webpage').create();

var url = 'http://phantomjs.org/';

page.open(url, function (status) {

page.evaluate(function() {

// 页面被执行完之后,一般js生成的内容也可以获得了,但是Ajax生成的内容则不一定

document.getElementById('xxx'); // 可以操作DOM,这里你就可以尝试获取你想要的内容了

// ...

})

phantom.exit();

});

但其实很多情况下,都是需要等待Ajax执行完毕后才开始解析页面的内容,这时候可以使用官方提供的一个示例代码,利用这个函数,可以等待这个页面所有的请求都加载完毕之后再接着处理,那么你就可以获得完整加载的页面了,之后该干嘛干嘛了。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 深入理解数据库并发控制原理
  • python怎么用for循环_python -for循环
  • AJAX的WEB开发工具
  • python入门知识图谱整理_零基础入门知识图谱技术到应用开发实战
  • Sun培训开放日
  • python多页网站目录_2:url有规律的多页面爬取
  • 淡水河边的夕阳-台北印象
  • python常问问题_python常见问题
  • Cisco路由器安全配置方案
  • crc32算法_业务开发中你用到了哪些算法?
  • ORA-00600 关联规则建模错误
  • python基于值得内存_浅谈Python 对象内存占用
  • 我的最大收获
  • 电力装置的继电保护和自动装置设计规范_电力工程的继电保护和安全自动装置设计原则(注电多选373)...
  • 好差的英语
  • 【391天】每日项目总结系列128(2018.03.03)
  • Effective Java 笔记(一)
  • HTTP 简介
  • Js基础知识(一) - 变量
  • leetcode98. Validate Binary Search Tree
  • mysql外键的使用
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 经典排序算法及其 Java 实现
  • 如何编写一个可升级的智能合约
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 如何在招聘中考核.NET架构师
  • ​Spring Boot 分片上传文件
  • ​补​充​经​纬​恒​润​一​面​
  • #etcd#安装时出错
  • #我与Java虚拟机的故事#连载17:我的Java技术水平有了一个本质的提升
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (30)数组元素和与数字和的绝对差
  • (javascript)再说document.body.scrollTop的使用问题
  • (Python) SOAP Web Service (HTTP POST)
  • (附源码)基于SpringBoot和Vue的厨到家服务平台的设计与实现 毕业设计 063133
  • (面试必看!)锁策略
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转)【Hibernate总结系列】使用举例
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转)大型网站架构演变和知识体系
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • (转载)Google Chrome调试JS
  • 、写入Shellcode到注册表上线
  • .chm格式文件如何阅读
  • .env.development、.env.production、.env.staging
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET 3.0 Framework已经被添加到WindowUpdate
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .Net MVC4 上传大文件,并保存表单
  • .NET 使用 XPath 来读写 XML 文件
  • .NET/C#⾯试题汇总系列:集合、异常、泛型、LINQ、委托、EF!(完整版)
  • .net访问oracle数据库性能问题
  • .net实现客户区延伸至至非客户区
  • [2009][note]构成理想导体超材料的有源THz欺骗表面等离子激元开关——