python3+selenium获取页面加载的所有静态资源文件链接操作


Posted in Python onMay 04, 2020

软件版本:

python 3.7.2

selenium 3.141.0

pycharm 2018.3.5

具体实现流程如下,废话不多说,直接上代码:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

d = DesiredCapabilities.CHROME
chrome_options = Options()
#使用无头浏览器
chrome_options.add_argument('--headless')
chrome_options.add_argument('--user-agent=Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36')
#浏览器启动默认最大化
chrome_options.add_argument("--start-maximized");
#该处替换自己的chrome驱动地址
browser = webdriver.Chrome("D://googleDever//chromedriver.exe",chrome_options=chrome_options,desired_capabilities=d)
browser.set_page_load_timeout(150)
browser.get("https://www.xxx.com")
#静态资源链接存储集合
urls = []
#获取静态资源有效链接
for log in browser.get_log('performance'):
	 if 'message' not in log:
			continue
	 log_entry = json.loads(log['message'])
	 try:
		#该处过滤了data:开头的base64编码引用和document页面链接
			if "data:" not in log_entry['message']['params']['request']['url'] and 'Document' not in log_entry['message']['params']['type']:
				urls.append(log_entry['message']['params']['request']['url'])
	 except Exception as e:
			pass
 print(urls)

打印结果为页面渲染时加载的静态资源文件链接:

[http://www.xxx.com/aaa.js,http://www.xxx.com/css.css]

以上代码为selenium获取页面加载过程中预加载的各类静态资源文件链接,使用该功能获取到链接后,使用其他插件进行可对资源进行下载!

补充知识:在idea 中python import sys,import requests 报错

File->Project Structure

project -> sdk -> new -> ok

设置编译参数(主要是设置和检查Python JDK是否正确)

python3+selenium获取页面加载的所有静态资源文件链接操作

以上这篇python3+selenium获取页面加载的所有静态资源文件链接操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python抓取京东价格分析京东商品价格走势
Jan 09 Python
python字典序问题实例
Sep 26 Python
python中list循环语句用法实例
Nov 10 Python
用Python代码来解图片迷宫的方法整理
Apr 02 Python
Python实现好友全头像的拼接实例(推荐)
Jun 24 Python
python 递归遍历文件夹,并打印满足条件的文件路径实例
Aug 30 Python
pandas的唯一值、值计数以及成员资格的示例
Jul 25 Python
Python设计模式之外观模式实例详解
Jan 17 Python
在Python中如何传递任意数量的实参的示例代码
Mar 21 Python
Python多进程multiprocessing、进程池用法实例分析
Mar 24 Python
xadmin使用formfield_for_dbfield函数过滤下拉表单实例
Apr 07 Python
pytorch 中autograd.grad()函数的用法说明
May 12 Python
解决IDEA 的 plugins 搜不到任何的插件问题
May 04 #Python
python3 sleep 延时秒 毫秒实例
May 04 #Python
Python并发concurrent.futures和asyncio实例
May 04 #Python
Python 中由 yield 实现异步操作
May 04 #Python
python 双循环遍历list 变量判断代码
May 04 #Python
Python求解排列中的逆序数个数实例
May 03 #Python
Python3实现个位数字和十位数字对调, 其乘积不变
May 03 #Python
You might like
PHP程序漏洞产生的原因分析与防范方法说明
2014/03/06 PHP
wordpress安装过程中遇到中文乱码的处理方法
2015/04/21 PHP
微信公众号判断用户是否已关注php代码解析
2016/06/24 PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
2016/10/29 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
禁止F5等快捷键的JS代码
2007/03/06 Javascript
鼠标经过显示二级菜单js特效
2013/08/13 Javascript
javascript数组操作(创建、元素删除、数组的拷贝)
2014/04/07 Javascript
jQuery事件对象总结
2016/10/17 Javascript
前端JS面试中常见的算法问题总结
2016/12/23 Javascript
浅析JS中的 map, filter, some, every, forEach, for in, for of 用法总结
2017/03/29 Javascript
vue中使用gojs/jointjs的示例代码
2018/08/24 Javascript
函数式编程入门实践(一)
2019/04/20 Javascript
详解nuxt 微信公众号支付遇到的问题与解决
2019/08/26 Javascript
JSX在render函数中的应用详解
2019/09/04 Javascript
JavaScript鼠标悬停事件用法解析
2020/05/15 Javascript
Python2包含中文报错的解决方法
2018/07/09 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
python matplotlib库绘制条形图练习题
2019/08/10 Python
Django实现文件上传下载
2019/10/06 Python
python读取ini配置文件过程示范
2019/12/23 Python
对tensorflow 中tile函数的使用详解
2020/02/07 Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
2020/02/11 Python
详解BeautifulSoup获取特定标签下内容的方法
2020/12/07 Python
HTML5 Canvas实现文本对齐的方法总结
2016/03/24 HTML / CSS
黑猩猩商店:The Chimp Store
2020/02/12 全球购物
医药营销个人求职信范文
2014/02/07 职场文书
学习十八大坚定理想信念心得体会
2014/03/11 职场文书
商务专员岗位职责范本
2014/06/29 职场文书
家长学校培训材料
2014/08/20 职场文书
工作证明英文模板
2014/10/21 职场文书
商铺租房协议书范本
2014/12/04 职场文书
百家讲坛观后感
2015/06/12 职场文书
2016年劳模先进事迹材料
2016/02/25 职场文书
学生安全责任协议书
2016/03/22 职场文书
2019年XX公司的晨会制度及流程!
2019/07/23 职场文书