selenium3 + python - page_source頁面源碼

前言:

有時候通過元素的屬性的查找頁面上的某個元素,可能不太好找,這時候可以從源碼中爬出想要的信息。selenium的page_source方法可以獲取到頁面源碼。

本次以博客園為例,先爬取頁面源碼,通過re正則表達式爬取出url,再進行篩選出http 協議的 url -- 用if做判斷。

源碼整理如下

from selenium import webdriver
import re

driver = webdriver.Chrome()
driver.get("https://www.cnblogs.com/Teachertao/")
page = driver.page_source
# print(page)

# "非貪婪匹配,re.S('.'匹配字符,包括換行符)"
url_list = re.findall('href=\"(.*?)\"', page)
#url_list = re.findall('href=\"(.*?)\"', page,re.S)
url_all = []
for url in url_list:
if "http" in url:
print(url)
url_all.append(url)
#打印出頁面url
print(url_all)

轉載于:https://www.cnblogs.com/Teachertao/p/10989353.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277552.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277552.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277552.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

簡單分析Guava中RateLimiter中的令牌桶算法的實現

為什么80%的碼農都做不了架構師?>>> 令牌桶算法是網絡流量整形(Traffic Shaping)和速率限制(Rate Limiting)中最常使用的一種算法。典型情況下,令牌桶算法用來控制發送到網絡上的數據的數目&am…

gcc oracle mysql_Linux下C語言訪問Oracle數據庫Demo

前提條件1. Linux環境已經存在,安裝好了Oracle本demo 運行環境本地環境 RedHat LINUX AS 4 ,ORACLE 10G本地數據庫sid orcl,ip:127.0.0.1,用戶名:kingbi,密碼:kingbi,表dsd_test. 顯示表dsd_test 的所有記錄.步驟:(1) 創建表 …

煉數成金數據分析課程---16、機器學習中的分類算法(交叉內容,后面要重點看)...

煉數成金數據分析課程---16、機器學習中的分類算法(交叉內容,后面要重點看) 一、總結 一句話總結: 大綱實例快速學習法 主要講解常用分類算法(如Knn、決策樹、貝葉斯分類器等)的原理及python代碼實現 1、什么是分類? 分…

NFS配置詳解

1、NFS服務介紹1.1 什么是NFS?NFS是Network File System的縮寫。中文意思是網絡文件系統。它的主要功能是通過網絡(一般是局域網)讓不同的主機系統之間可以共享文件或者目錄。NFS客戶端(一般為應用服務器,例如web&…

idea用法

更新gradle的依賴后,刷新項目引入jar包的方法: view--Tool Buttons 在右側 Gradle 點刷新 轉載于:https://www.cnblogs.com/z360519549/p/10994897.html

linux備份mysql需要暫停服務嗎_【MySQL運維】線上MySQL數據庫停服遷移流程

一、數據備份與恢復階段,選在凌晨1點進行操作,暫停服務進行備份(允許停服2個小時)1、首先停止Nginx服務,并且修改數據庫用戶密碼,防止還有新的連接進來2、殺掉某個用戶所有進程for i in mysql -udba -pPASSWORD -ssse "show …

免費下載!5本阿里技術好書,帶你看更大的世界

共享、開源是互聯網技術發展的重要精神。在過去,25000多萬名阿里工程師,撰寫了一系列精品技術叢書,從算法、研發到職業人生隨筆,應有盡有。目前該系列叢書已全部開放下載,供技術人免費閱讀。 今天小編整理了其中的五本…

python3安裝mysqlclient_Python3 安裝mysqlclient錯誤處理(MAC版)

在使用django的時候需要安裝mysqlclient庫,很多時候會出現以下報錯:running installrunning bdist_eggrunning egg_infowriting mysqlclient.egg-info/PKG-INFOwriting dependency_links to mysqlclient.egg-info/dependency_links.txtwriting top-level names to mysqlclient.…

React綁定事件處理函數this的幾種方法

在以類繼承的方式定義的組件中,為了能方便地調用當前組件的其他成員方法或屬性(如:this.state),通常需要將事件處理函數運行時的 this 指向當前組件實例。 綁定事件處理函數this的幾種方法: 第一種方法&…

烏班圖系統16.04安裝

本例jiyu基于Ubuntu16.04 64位版本為例進行安裝,安裝的方式有多種,本文使用光盤進行安裝安裝前應準備好,將Ubuntu的鏡像文件刻成光盤,然后將光盤放入光驅,并設置服務器從光盤啟動,開機到如下界面:按Enter鍵到下一步,如…

python做游戲用什么軟件_用Python自制谷歌小游戲

谷歌流量器中有個很有名的彩蛋:當你網絡出現問題時,就會出現一個“小恐龍游戲”。(如果想要直接進行游戲,可以在地址欄輸入:chrome://dino)今天我們就來給大家演示下,用Python來自己做一個仿制的“小恐龍游戲”&#x…

使用maven構建項目候,jar包錯誤的解決辦法

1、刪除架包,重新下載,右鍵項目點擊"run as"中的“maven clean”,然后再maven中找到Update Project 2、可以在代碼中,把鼠標放到報錯的架包上 點擊劃紅線部分,進行安裝 轉載于:https://www.cnblogs.com/qingqian/p/1099…

MySQL——通過EXPLAIN分析SQL的執行計劃

在MySQL中,我們可以通過EXPLAIN命令獲取MySQL如何執行SELECT語句的信息,包括在SELECT語句執行過程中表如何連接和連接的順序。下面分別對EXPLAIN命令結果的每一列進行說明:select_type:表示SELECT的類型,常見的取值有:…

python將argv作為參數_在jupyter / ipython notebook中將命令行參數傳遞給argv

經過大量的環顧后,我發現了非常繁瑣的自定義庫,但是用幾行代碼解決了它,我認為這些代碼很漂亮.我使用nbconvert最終得到一個html報告作為輸出,包含筆記本中的所有圖形和降價,但是通過最小的python包裝器接受命令行參數:python文件test_args.py(正常執行命令行參數)&…

模擬輸入(ADC-A0)

ESP8266具有內置的10位ADC,只有一個ADC通道(A0引腳),即只有一個ADC輸入引腳可讀取來自外部器件的模擬電壓 ESP8266上的ADC通道和芯片供電電壓復用,也就是說我們可以將其設置為測量系統電壓或者外部電壓 測量外部電壓: analogRead(…

SQL Server 連接超時案例一則

原文:SQL Server 連接超時案例一則上周六,一工廠系統管理員反饋一數據庫連接不上,SSMS連接數據庫報“連接超時時間已到。在嘗試使用預登錄握手確認時超過了此超時時間.......”, 如下截圖所示: 另外遠程連接也連接不上,系統管理員…

mysql 刪除5天前 備份_mysql自動備份刪除5天前的備份

1、查看磁盤空間情況:df -h2、創建備份目錄:上面我們使用命令看出/home下空間比較充足,所以可以考慮在/home保存備份文件;cd /homemkdir backupcd backup3、創建備份Shell腳本:注意把以下命令中的DatabaseName換為實際的數據庫名稱…

個人作業-Alpha項目測試

這個作業屬于哪個課程https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2作業地址https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/3340團隊名稱腦闊疼https://www.cnblogs.com/chaserFF/p/10994338.html這個作業的目標完成班級項目互評…

深入理解brew link命令

來源:https://newsn.net/say/brew-link-php71.html brew是mac機上面程序猿非常常用的軟件包安裝方式,其中有兩組命令是需要大家知曉的。分別是:第一組:brew install和brew uninstall。第二組,brew link和brew unlink。…

scss2css vscode設置_VSCode下讓CSS文件完美支持SCSS或SASS語法方法

VSCode下讓CSS文件完美支持SCSS或SASS語法方法習慣Webpack PostCSS后, 通常PostCSS都是直接對CSS文件進行處理, 但是大部分習慣SCSS/SASS/LESS的朋友也許不適應了. 我專門研究了一下, 在Visual Studio Code編輯器下如果配置相關代碼和設置達到CSS文件完美編寫SCSS的辦法, 其他…