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

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爬虫 使用真实浏览器打开网页的两种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。