国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python3實現(xiàn)抓取javascript動態(tài)生成的html網(wǎng)頁功能示例

2020-02-16 02:07:23
字體:
供稿:網(wǎng)友

本文實例講述了Python3實現(xiàn)抓取javascript動態(tài)生成的html網(wǎng)頁功能。分享給大家供大家參考,具體如下:

用urllib等抓取網(wǎng)頁,只能讀取網(wǎng)頁的靜態(tài)源文件,而抓不到由javascript生成的內(nèi)容。

究其原因,是因為urllib是瞬時抓取,它不會等javascript的加載延遲,所以頁面中由javascript生成的內(nèi)容,urllib讀取不到。

那由javascript生成的內(nèi)容就真的沒有辦法讀取了嗎?非也!

這里要介紹一個python庫:selenium,本文使用的版本是 2.44.0

先安裝:

pip install -U selenium

下面用三個例子來說明其用法:

【例0】

打開一個Firefox瀏覽器
載入所給url地址的頁面

from selenium import webdriverbrowser = webdriver.Firefox()browser.get('http://www.baidu.com/')

【例1】

打開一個Firefox瀏覽器
載入百度主頁
搜索 “seleniumhq”
關(guān)閉瀏覽器

from selenium import webdriverfrom selenium.webdriver.common.keys import Keysbrowser = webdriver.Firefox()browser.get('http://www.baidu.com')assert '百度' in browser.titleelem = browser.find_element_by_name('p') # Find the search boxelem.send_keys('seleniumhq' + Keys.RETURN) # 模擬按鍵browser.quit()

【例2】

Selenium WebDriver 常用于網(wǎng)絡(luò)程序的測試。 下面是一個使用Python標準庫 unittest 的例子:

import unittestclass BaiduTestCase(unittest.TestCase):  def setUp(self):    self.browser = webdriver.Firefox()    self.addCleanup(self.browser.quit)  def testPageTitle(self):    self.browser.get('http://www.baidu.com')    self.assertIn('百度', self.browser.title)if __name__ == '__main__':  unittest.main(verbosity=2)

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python進程與線程操作技巧總結(jié)》、《Python Socket編程技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 霸州市| 常宁市| 北宁市| 临邑县| 宜黄县| 获嘉县| 柘城县| 娄烦县| 永定县| 井研县| 北流市| 阜城县| 哈密市| 手游| 来宾市| 紫金县| 祁东县| 射洪县| 台南县| 长丰县| 芜湖县| 夹江县| 东乌| 比如县| 丰台区| 安福县| 新田县| 丹东市| 新竹县| 缙云县| 惠安县| 屏东市| 蒲江县| 仪陇县| 县级市| 长岭县| 乐亭县| 南阳市| 安阳市| 蒲江县| 封开县|