0x0 背景

最近在学习Python爬虫的相关知识,主要是之前有一个小idea想要用Python实现,沉寂了一年,近期终于下定决心要利用假期时间首要解决此项任务,不然拖到最后都没完成,自己遗憾不说,还会养成拖沓的坏习惯,只有想法不去实现,终究不能提高。

于是乎,利用假期的时间,竟然十分顺利的完成了初期设想的大部分功能,而且运行良好。正当我准备使用时,发现有个功能需要爬取的网页发生了变化,以前使用requests.get()可以得到的内容,由于需要打开网页后加载,现在抓不到了!这个问题困扰了我差不多两天的时间,终于通过查阅资料解决,记录一下。

0x1 Selenium+PhantomJS

虽然PhantomJS因为某些内部原因暂停更新,但是相比其他的浏览器解决方案要实例化窗口,这个应该还是要高效一点吧,而且不更新不代表不能用,等以后有需求了再看别的,目前就选该解决路径了。

安装环境(此处为MacOS环境)

安装PhantomJS

nano ~/.bash_profile

##将Phantomjs路径加入path中

export PATH=/Your/Path/to/Phantomjs/bin:$PATH

##保存退出

##生效

source ~/.bash_profile

测试

~ phantomjs

phantomjs>

安装selenium

直接用pip安装即可

pip3 install selenium --user

0x2 使用

剩下的就挺简单了,直接上代码:

from selenium import webdriver

driver = webdriver.PhantomJS()

driver.get(your_url)

html = driver.execute_script('return document.documentElement.outerHTML')

虽然selenium有很多更高级的用法,但是由于笔者之前用的是cssselect,所以就得到完整加载的HTML源码内容为短期目的,进阶使用再下一步学习吧。

python爬虫获取的网页数据为什么要加[0-[Python爬虫] 等待网页加载后再获取内容...相关推荐

  1. python爬虫网页数据案例_python+vue实现网站爬虫数据分析案例

    项目描述 基础环境:python + flask + vue + element-ui + echarts python_spiders -- 爬虫后台项目 python_spiders_web -- ...

  2. 编程python爬取网页数据教程_实例讲解Python爬取网页数据

    一.利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('http://i.f ...

  3. python主要就业方向-【数据说话】当下的Python就业前景如何

    原标题:[数据说话]当下的Python就业前景如何 Python 现在是越来越火了. IEEE 发布的 2017 年编程语言排行榜,Python 排第一. 百度指数的搜索趋势,Python稳步上升. ...

  4. js实现excel块拖拉数据_Excel操作比Python更方便?常见数据操作Excel实现和Python实现的比较...

    本文涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据清洗.预处理,以及最常见的数据分类,数据筛选,分类汇总,透视等最常见的操作. 生成数据表 常见的生成数据表的方法有两 ...

  5. python降维之时间类型数据的处理_使用Python进行数据降维|线性降维

    前言 为什么要进行数据降维?直观地好处是维度降低了,便于计算和可视化,其深层次的意义在于有效信息的提取综合及无用信息的摈弃,并且数据降维保留了原始数据的信息,我们就可以用降维的数据进行机器学习模型的训 ...

  6. python电脑下载-PC端数据下载软件开发(Python)

    存储工具:阿里云->对象存储 需要将数据从云端下载到本地后再进行后续分析处理. 手动下载 需要下载的文件不多时,可以用这个方式. 依次点击:阿里云->控制台->对象存储->Bu ...

  7. python读取mysql中的数据_Python笔记:用Python读取MySQL中的数据

    Python处理数据分析的优势,很多人都知道(可以实现更复杂.更灵活的操作,包括数据预处理.数据可视化输出等),但是加载到Python中的数据,只是临时存储在内存中的一张虚拟表(退出之后就会被释放掉了 ...

  8. c语言编程网页数据提取,怎么用c语言抓取网页中的数据

    当前位置:我的异常网» C语言 » 怎么用c语言抓取网页中的数据 怎么用c语言抓取网页中的数据 www.myexceptions.net  网友分享于:2013-07-17  浏览:390次 如何用c ...

  9. python怎么爬取新浪微博数据中心_如何用python爬取nba数据中心的数据

    #coding=utf-8 import sys reload(sys) sys.setdefaultencoding('utf-8') import requests import time imp ...

最新文章

  1. 敏捷个人纸质书:第一章 源于生活和工作的敏捷个人
  2. 基于simulink的SVC与SVG的性能比较
  3. Qt Creator在浏览器中预览
  4. 第二章作业-第3题-万世想
  5. 手把手教你写Linux I2C设备驱动
  6. Unity应用架构设计(1)—— MVVM 模式的设计和实施(Part 2)
  7. STM32之GPIO原理
  8. java中file对象_Java中File对象的常用方法
  9. python--httplib模块使用
  10. MiluGPS(迷路者GPS导航软件)
  11. HTML5-jqUI----EasyUI
  12. Linux/软件 - 资源[国外站点]
  13. 12省微生物繁殖,for循环模拟,12省,古堡算式全排列,12省鲁卡斯队列黄金比例比较,double精度12省填空题猜生日枚举,12省填空题土地测量,double12省填空题巧排扑克牌,12省汉诺塔
  14. 解决安装 ISE14.7 Windows10 时出错
  15. 电子漫画系列更新10张!古老的示波器,USB hub萌妹,超级酷的焊接壁画
  16. 详细代码注释1148: 组合三位数之一
  17. JS初中段考:袖珍西历
  18. 感性认识:计算机基本工作原理
  19. jquery按钮和回车键绑定
  20. 小陈的Java学习心得

热门文章

  1. mysql 事件_区块链研究实验室 | 使用MySQL存储以太坊事件
  2. python arima模型_时间序列分析 ARIMA模型 Python(2)
  3. 网页html是什么语言程序,html是什么
  4. mfc指示灯报警显示_消防百科 | 火灾显示盘的基本功能有哪些?
  5. neat算法——本质就是遗传算法用于神经网络的自动构建
  6. suse11/12关闭防火墙
  7. 【java】实现一个简单的正则:判断一个字符串是否全由数字组成
  8. Linux知识积累(6) 系统目录及其用途
  9. 等价类划分应用的扩展
  10. httpclient工具使用(org.apache.httpcomponents.httpclient)