问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Python怎么获取js动态加载的数据

发布网友 发布时间:2022-04-26 05:17

我来回答

5个回答

热心网友 时间:2022-04-10 02:52

利用WebBrowser控件来获取js动态加载的数据:
首先,我要在DocumentCompleted事件里面完成内容获取的工作,因为该控件是在文档加载完成后触发的。其次,这个事件有个问题,就是说如果在页面中有iframe框架之类的,如果这个iframe加载完成也会触发这个事件,所以我们要做个判断:
if (wb.ReadyState == WebBrowserReadyState.Complete && e.Url.ToString() == wb.Url.ToString())
wb.Document.Body.InnerHtml;//这样就获取到数据了

热心网友 时间:2022-04-10 04:10

要抓取动态加载的元素,首先考虑使用selenium来调用浏览器进行抓取。
而我们运行的环境是Linux,最理想的方法是在无界面情况下进行抓取。
所以使用selenium+phantomjs来进行无界面抓取
phantomjs是什么呢?它是一个基于webkit内核的无头浏览器,即没有UI界面,即它就是一个浏览器

selenium和phantomjs的安装配置可以google,这里就略过不谈了
代码如下:
from selenium import webdriver
driver = webdriver.PhantomJS(executable_path='/bin/phantomjs/bin/phantomjs')#如果不方便配置环境变量。就使用phantomjs的绝对路径也可以
driver.get('http://image.baidu.com/i?ie=utf-8&word=%E5%91%A8%E6%9D%B0%E4%BC%A6')#抓取了百度图片,query:周杰伦

driver.page_source #这就是返回的页面内容了,与urllib2.urlopen().read()的效果是类似的,但比urllib2强在能抓取到动态渲染后的内容。
driver.quit()

到这里。就抓取动态页面成功了。

热心网友 时间:2022-04-10 05:44

百度搜索 :在Python中执行javascript

热心网友 时间:2022-04-10 07:36

import selenium
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time

browser = webdriver.Firefox() # Get local session of firefox
browser.get("http://news.sina.com.cn/c/2013-07-11/175827642839.shtml ") # Load page
time.sleep(5) # Let the page load
try:
element = browser.find_element_by_xpath("//span[contains(@class,'f_red')]") # get element on page
print element.text # get element text
except NoSuchElementException:
assert 0, "can't find f_red"
browser.close()

热心网友 时间:2022-04-10 09:44

Just wondering, Python 不用第三方能干啥?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 黑龙江债权转让合同纠纷该怎样取证 安徽债权转让合同纠纷应该怎么样取证 房产官司律师费多少 python在html如何定位嵌套的html元素,如图 属龙的找什么属相的好 虎年贺岁币什么时候预约 与龙相配的属相有哪些? python进入frame一定要用ID或NAME吗 工商银行贺岁币值钱吗 属龙相冲的三个属相 2020年贺岁普通纪念币有什么用? python+selenuim 处理标签中的时间戳 前端面试题,ifram有哪些缺点,怎么改进 属龙跟什么生肖是三合? 网页中 嵌套 iframe 优缺点 2021贺岁币发布,这有收藏价值吗? 为什么前端尽量少用iframe iframe的优点跟缺点有哪些? selenium python 定位问题,前期采用了iframe/xpath/class CSS的方法全 ... 2021贺岁普通纪念币,这个纪念币的灵感来自哪里? 关于Python爬虫 抓取方正教务系统的问题 贺岁币是免费的吗 python selenium 获取不到iframe? 十二生肖里 以龙为主前后三肖是什么? 龙配什么属相? python selenium富文本插件怎么写 请问什么是属龙三合贵人和六合贵人 家里三个属龙的 好不好?拜托了各位 谢谢 龙和什么属相合才气 家里生肖有三条龙好不好的 生肖表里三条龙是指什么生肖 三省四市互结对子东北与东部对口咋牵手? 党提出的五个基本七个体系 他是真的爱你吗对标下哪5个表现? 柳体长横起笔处需要捻管转锋,到底怎么转法啊/ 两个人在一起不顾对方感受,专戳对方痛处,久而久之已经变得针锋相对,到最后不了了之。只怪自尊心太强, 以磁石磨针锋,则锐处常指南,为什么”锐处指南? wpa2密码是什么意思? 为什么外箱要贴overpack 如果一个产品一个纸箱包装,没有外箱,外箱标签和SKU标签怎么贴? 产品标签随意贴外包装箱子盒子违法吗? 外箱标签备注栏应打印什么? 请问在食品外箱标贴需要多大啊