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 相关文章推荐
python完成FizzBuzzWhizz问题(拉勾网面试题)示例
May 05 Python
Python实现基本数据结构中队列的操作方法示例
Dec 04 Python
windows10下python3.5 pip3安装图文教程
Apr 02 Python
使用python爬取B站千万级数据
Jun 08 Python
Python正则表达式和元字符详解
Nov 29 Python
详解python持久化文件读写
Apr 06 Python
pandas计数 value_counts()的使用
Jun 24 Python
在python中用print()输出多个格式化参数的方法
Jul 16 Python
Python环境Pillow( PIL )图像处理工具使用解析
Sep 12 Python
Python SSL证书验证问题解决方案
Jan 13 Python
python操作docx写入内容,并控制文本的字体颜色
Feb 13 Python
Python脚本如何在bilibili中查找弹幕发送者
Jun 04 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
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
2013/06/01 PHP
JavaScript 变量、作用域及内存
2015/04/08 Javascript
JavaScript之AOP编程实例
2015/07/17 Javascript
jQuery实现简单的点赞效果
2020/05/29 Javascript
微信小程序  生命周期详解
2016/10/27 Javascript
jquery ajaxfileupload异步上传插件使用详解
2017/02/08 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
Linux Centos7.2下安装nodejs&npm配置全局路径的教程
2018/05/15 NodeJs
vue.js实现格式化时间并每秒更新显示功能示例
2018/07/07 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
2018/07/12 Javascript
解决cordova+vue 项目打包成APK应用遇到的问题
2019/05/10 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
微信小程序canvas开发水果老虎机的思路详解
2020/02/07 Javascript
在Vue中实现随hash改变响应菜单高亮
2020/03/09 Javascript
Nest.js散列与加密实例详解
2021/02/24 Javascript
讲解python参数和作用域的使用
2013/11/01 Python
python面向对象入门教程之从代码复用开始(一)
2018/12/11 Python
彻底理解Python中的yield关键字
2019/04/01 Python
Python assert关键字原理及实例解析
2019/12/13 Python
Python中的整除和取模实例
2020/06/03 Python
基于Tensorflow读取MNIST数据集时网络超时的解决方式
2020/06/22 Python
Python 内存管理机制全面分析
2021/01/16 Python
Paul’s Boutique官网:英国时尚手袋品牌
2018/03/31 全球购物
Belvilla德国:在线预订度假屋
2018/04/10 全球购物
说出你对remoting 和webservice的理解和应用
2014/06/08 面试题
公司部门司机岗位职责
2014/01/03 职场文书
先进事迹报告会感言
2014/01/24 职场文书
小学体育教学反思
2014/01/31 职场文书
年度考核自我鉴定
2014/02/02 职场文书
年度评优评先方案
2014/06/03 职场文书
常务副总经理岗位职责
2015/02/02 职场文书
面试通知单大全
2015/04/20 职场文书
css 中多种边框的实现小窍门
2021/04/07 HTML / CSS
MySQL8.0无法启动3534的解决方法
2021/06/03 MySQL
解决vue自定义组件@click点击失效问题
2022/04/30 Vue.js
win10滚动条自动往上跑怎么办?win10滚动条自动往上跑的解决方法
2022/08/05 数码科技