python爬虫 使用真实浏览器打开网页的两种方法总结


Posted in Python onApril 21, 2018

1.使用系统自带库 os

这种方法的优点是,任何浏览器都能够使用, 缺点不能自如的打开一个又一个的网页

import os 
os.system('"C:/Program Files/Internet Explorer/iexplore.exe" http://www.baidu.com')

2.使用python 集成的库 webbroswer

python的webbrowser模块支持对浏览器进行一些操作,主要有以下三个方法:

import webbrowser 
webbrowser.open(url, new=0, autoraise=True) 
webbrowser.open_new(url) 
webbrowser.open_new_tab(url)

他们虽然是三个方法, 其实还是一个方法, 只是传递的参数不同

webbrowser.open(url, new=0, autoraise=True) 在系统的默认浏览器中访问url地址,如果new=0, url会在同一个

浏览器窗口中打开;如果new=1,新的浏览器窗口会被打开;new=2 新的浏览器tab会被打开

其他的两个函数 webbrowser.open_new(url),webbrowser.open_new_tab(url)其实都是返回了webbrowser.open() 这个方法

只是他们没有其他的两个参数了。

在调用其他的浏览器的时候需要提前注册, 否则打开页面的是默认浏览器

import webbrowser 
chromePath = r'你的浏览器目录'   # 例如我的:D:\Google\Chrome\Application\chrome.exe 
webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(chromePath)) #这里的'chrome'可以用其它任意名字,如chrome111,这里将想打开的浏览器保存到'chrome' 
webbrowser.get('chrome').open('www.baidu.com',new=1,autoraise=True)

webbrowser 这个库锁支持的浏览器类型如下:

Type Name Class Name Notes 
 'mozilla' Mozilla('mozilla') 
 'firefox' Mozilla('mozilla') 
 'netscape' Mozilla('netscape') 
 'galeon' Galeon('galeon') 
 'epiphany' Galeon('epiphany') 
 'skipstone' BackgroundBrowser('skipstone') 
 'kfmclient' Konqueror() (1) 
 'konqueror' Konqueror() (1) 
 'kfm' Konqueror() (1) 
 'mosaic' BackgroundBrowser('mosaic') 
 'opera' Opera() 
 'grail' Grail() 
 'links' GenericBrowser('links') 
 'elinks' Elinks('elinks') 
 'lynx' GenericBrowser('lynx') 
 'w3m' GenericBrowser('w3m') 
 'windows-default' WindowsDefault (2) 
 'macosx' MacOSX('default') (3) 
 'safari' MacOSX('safari') (3) 
 'google-chrome' Chrome('google-chrome') 
 'chrome' Chrome('chrome') 
 'chromium' Chromium('chromium') 
 'chromium-browser' Chromium('chromium-browser')

这些内容都可以在 源文件中看到, 路径为: python2.7/libs/webbroser.py

以上这篇python爬虫 使用真实浏览器打开网页的两种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3实现暴力穷举博客园密码
Jun 19 Python
Python编程实现二叉树及七种遍历方法详解
Jun 02 Python
浅谈Python中的私有变量
Feb 28 Python
Python实现的NN神经网络算法完整示例
Jun 19 Python
Django项目开发中cookies和session的常用操作分析
Jul 03 Python
Python异常处理例题整理
Jul 07 Python
解析python的局部变量和全局变量
Aug 15 Python
python 正则表达式参数替换实例详解
Jan 17 Python
Python中itertools的用法详解
Feb 07 Python
python ssh 执行shell命令的示例
Sep 29 Python
python的setattr函数实例用法
Dec 16 Python
python函数的两种嵌套方法使用
Apr 02 Python
Python针对给定字符串求解所有子序列是否为回文序列的方法
Apr 21 #Python
Django项目实战之用户头像上传与访问的示例
Apr 21 #Python
基于Python 装饰器装饰类中的方法实例
Apr 21 #Python
使用python装饰器计算函数运行时间的实例
Apr 21 #Python
Python实现针对给定字符串寻找最长非重复子串的方法
Apr 21 #Python
Python 实现一行输入多个值的方法
Apr 21 #Python
Python实现接受任意个数参数的函数方法
Apr 21 #Python
You might like
9个实用的PHP代码片段分享
2015/01/22 PHP
PHPCMS2008广告模板SQL注入漏洞修复
2016/10/11 PHP
PHP+redis实现微博的推模型案例分析
2019/07/10 PHP
php设计模式之工厂模式用法经典实例分析
2019/09/20 PHP
Laravel框架实现即点即改功能的方法分析
2019/10/31 PHP
jquery easyui的tabs使用时的问题
2010/03/23 Javascript
把jQuery的类、插件封装成seajs的模块的方法
2014/03/12 Javascript
jquery制作 随机弹跳的小球特效
2015/02/01 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
JS实现可展开折叠层的鼠标拖曳效果
2015/10/09 Javascript
jQuery Mobile漏洞会有跨站脚本攻击风险
2017/02/12 Javascript
解决vue项目中type=”file“ change事件只执行一次的问题
2018/05/16 Javascript
通过图带你深入了解vue的响应式原理
2019/06/21 Javascript
使用vue实现多规格选择实例(SKU)
2019/08/23 Javascript
浅谈微信小程序列表埋点曝光指南
2019/10/15 Javascript
vue中父子组件传值,解决钩子函数mounted只运行一次的操作
2020/07/27 Javascript
vant 中van-list的用法说明
2020/11/11 Javascript
javascript实现移动端轮播图
2020/12/09 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
python中的代码编码格式转换问题
2015/06/10 Python
Python判断值是否在list或set中的性能对比分析
2016/04/16 Python
利用python爬取散文网的文章实例教程
2017/06/18 Python
Python使用Pickle模块进行数据保存和读取的讲解
2019/04/09 Python
django之对FileField字段的upload_to的设定方法
2019/07/28 Python
pandas实现导出数据的四种方式
2020/12/13 Python
canvas绘制图片drawImage使用方法
2020/09/15 HTML / CSS
Zavvi美国:英国娱乐之家
2017/03/19 全球购物
Blue Nile台湾:钻石珠宝商,订婚首饰、结婚戒指和精品首饰
2017/11/24 全球购物
爱尔兰最大的体育零售商:Life Style Sports
2019/06/12 全球购物
Mountain Warehouse波兰官方网站:英国户外品牌
2019/08/29 全球购物
Windows和Linux动态库应用异同
2016/07/28 面试题
心理健康教育心得体会
2013/12/29 职场文书
大专会计自我鉴定
2014/02/06 职场文书
消防战士优秀事迹材料
2014/02/13 职场文书
珍惜水资源建议书
2014/03/12 职场文书
python中subplot大小的设置步骤
2021/06/28 Python