python爬取js动态网页_Python 爬取网页中JavaScript动态添加的内容(一)
当我们进行网页爬虫时,我们会利用一定的规则从返回的 HTML 数据中提取出有效的信息。但是如果网页中含有 JavaScript 代码,我们必须经过渲染处理才能获得原始数据。此时,如果我们仍采用常规方法从中抓取数据,那么我们将一无所获。那么,通过Web kit可以简单解决这个问题。Web kit 可以实现浏览器所能处理的任何事情。对于某些浏览器来说,Web kit就是其底层的网页渲染工具。Web kit是QT库的一部分,因此如果你已经安装QT和PyQT4库,那么你可以直接运行之。
1、环境准备
Linux:sudo apt-get install python-qt4
2、使用
首先通过 Web kit 发送请求信息,然后等待网页被完全加载后将其赋值到某个变量中。接下来我们利用lxml从 HTML 数据中提取出有效的信息。这个过程需要一点时间。
importsysfrom PyQt4.QtWebKit import *
from PyQt4.QtGui import *
from PyQt4.QtCore import *
class Render(QWebPage): #用来渲染网页,将url中的所有信息加载下来并存到一个新的框架中
def __init__(self,url):
self.app=QApplication(sys.argv)
QWebPage.__init__(self)
self.loadFinished.connect(self._loadFinished)
self.mainFrame().load(QUrl(url))
self.app.exec_()def_loadFinished(self, result):
self.frame=self.mainFrame()
self.app.quit()
url= 'http://jandan.net/ooxx'r=Render(url)
html=r.frame.toHtml()print(html)
那么,后面的工作就是解析HTML代码了,这里不做讲解。
python爬取js动态网页_Python 爬取网页中JavaScript动态添加的内容(一)相关推荐
- python爬取动态网页_python爬取动态网页数据,详解
原理:动态网页,即用js代码实现动态加载数据,就是可以根据用户的行为,自动访问服务器请求数据,重点就是:请求数据,那么怎么用python获取这个数据了? 浏览器请求数据方式:浏览器向服务器的api(例 ...
- python爬取虎扑评论_Python爬取NBA虎扑球员数据
虎扑是一个认真而有趣的社区,每天有众多JRs在虎扑分享自己对篮球.足球.游戏电竞.运动装备.影视.汽车.数码.情感等一切人和事的见解,热闹.真实.有温度. 受害者地址 https://nba.hupu ...
- python 数据分析 书籍推荐 知乎_Python 爬取知乎 9674 个问答,揭秘最受欢迎的 98 本书!...
原标题:Python 爬取知乎 9674 个问答,揭秘最受欢迎的 98 本书! 作者 | Yura 责编 | 胡巍巍 高尔基这话有没有道理我不知道, 咱也不敢问, 主要是现在也问不了. 那对我来说,读 ...
- python写一个爬虫、爬取网站漫画信息_python爬取漫画
原博文 2017-05-31 00:56 − 抓取漫画的网址是:sf互动传媒 抓取漫画的由来也是看了知乎上有人说用爬取漫画,然后自己也玩玩 首页中每个漫画的url是类似这样存储的: 相关推荐 2019 ...
- python爬取新闻存入数据库_python爬取数据存入数据库
昨天本来写了一篇关于python爬取的文章,结果没通过,正好今天一起吧.用python同时实现爬取,和存入数据库,算是复习一下前面操作数据库的知识. 1.准备工作 既然是爬取,那自然要连接到爬取的页面 ...
- python爬取京东评论分析_Python爬取京东商品评论+制作关键字云+情感分析图
首先我们要了解一下,我们用requests包爬取的都只是写在HTML页面上的数据,但是呢,现在很多网站的数据都是通过js代码生成的,除非你找到它,不然是爬取不到的. 首先我随意打开一个京东的商品的详情 ...
- python百度贴吧 发帖时间_python爬取贴吧帖子
一.介绍 我们常遇到一些很长的贴吧连载帖子想存到本地再看 此文就是运用python爬取指定百度贴吧的帖子并存到本地满足需求 环境:python2.7 目标网页:[长篇连载]剑网3的正史和野史--从头开 ...
- python爬取微博用户关注_python爬取微博用户关注和粉丝的公开基本信息
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:TM0831 PS:如有需要Python学习资料的小伙伴可以加点击下 ...
- python爬取b站用户_python爬取b站排行榜
爬取b站排行榜并存到mysql中 目的 b站是我平时看得最多的一个网站,最近接到了一个爬虫的课设.首先要选择一个网站,并对其进行爬取,最后将该网站的数据存储并使其可视化. 网站的结构 目标网站:bil ...
- python爬取音乐并保存_Python爬取网易云音乐上评论火爆的歌曲
前言 网易云音乐这款音乐APP本人比较喜欢,用户量也比较大,而网易云音乐之所以用户众多和它的歌曲评论功能密不可分,很多歌曲的评论非常有意思,其中也不乏很多感人的评论.但是,网易云音乐并没有提供热评排行 ...
最新文章
- python 代码-你见过哪些令你瞠目结舌的 Python 代码技巧?
- MyBatis相应API
- Keras 构建DNN 对用户名检测判断是否为非法用户名(从数据预处理到模型在线预测)
- 使用Automake和Autoconf生成Makefile
- java获取数组穷举_被BAT疯抢的Java工程师,都是怎么拿到年薪50W的offer
- [BZOJ 3668UOJ #2][Noi2014]起床困难综合症(贪心)
- 电子表格计算机知识,EXCEL电子表格基本知识.doc
- 图像处理——人脸情绪识别(python卷积神经网络)
- win10+AV1+VS2017 编译器内部错误
- 解决vue项目出现Navigating to current location (XXX) is not allowed 报错
- Win11图片打不开怎么办?Win11无法打开图片的修复方法
- 47 lvs-nat/dr
- vs调试nuget包_高冷?孩子气?醋包?那不得是分对象啊
- 海外SDK之----------韩国支付onestore
- Auto.js 一个同一张图片多次多点找色的例子ColorMapping.findMultiColors
- 易信公众平台开发从入门到精通之接收普通消息
- PDF转Word工具——免费
- 大数据培训学习效果好吗
- Vue 组件封装 | 给汉字注音(带声调),内含汉字转拼音(带声调/不带声调),获取汉字首字母的方法
- PhotoSwipe 滑动浏览图片插件使用方法
热门文章
- 分割线不显示_90后都30岁了,为什么还不结婚
- java addlast_Java中的LinkedList addLast()方法: java.util.LinkedList.addLast() - Break易站
- java jsonobject.parse_JSON.parseObject的几种用法
- oracle定义变量sql赋值_ORACLE获取SQL绑定变量值的方法总结
- Pytorch Anaconda 安装CPU版本
- Epson C1100报错“Service Req E511”的处理方法
- MySQL数据库学习笔记
- Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群
- Linux笔记1-5 --用户
- MySQL系列之E-1------MySQL主从复制原理