国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Selenium結合BeautifulSoup4編寫簡單的python爬蟲

瀏覽:6日期:2022-07-06 09:40:35

在學會了抓包,接口請求(如requests庫)和Selenium的一些操作方法后,基本上就可以編寫爬蟲,爬取絕大多數網站的內容。

在爬蟲領域,Selenium永遠是最后一道防線。從本質上來說,訪問網頁實際上就是一個接口請求。請求url后,返回的是網頁的源代碼。

我們只需要解析html或者通過正則匹配提取出我們需要的數據即可。

有些網站我們可以使用requests.get(url),得到的響應文本中獲取到所有的數據。而有些網頁數據是通過JS動態加載到頁面中的。使用requests獲取不到或者只能獲取到一部分數據。此時我們就可以使用selenium打開頁面來,使用driver.page_source來獲取JS執行完后的完整源代碼。

例如,我們要爬取,diro官網女包的名稱,價格,url,圖片等數據,可以使用requests先獲取到網頁源代碼:訪問網頁,打開開發者工具,我們可以看到所有的商品都在一個

標簽里,展開這個li標簽,我們可找到商品名稱,價格,url,圖片鏈接等信息

Selenium結合BeautifulSoup4編寫簡單的python爬蟲

從html格式的源碼中提取數據,有多種選擇,可以使用xml.etree等等方式,bs4是一個比較方便易用的html解析庫,配合lxml解析速度比較快。

bs4的使用方法為

from bs4 import BeautifulSoupsoup = BeautifulSoup(網頁源代碼字符串,’lxml’)soup.find(...).find(...)soup.findall()soup.select(’css selector語法’)

soup.find()可以通過節點屬性進行查找,如,soup.find(’div’, id=’節點id’)或soup.find(’li’, class_=’某個類名’)或soup.find(’標簽名’, 屬性=屬性值),當找到一個節點后,還可以使用這個節點繼續在其子節點中查找。soup.find_all()是查找多個,同樣屬性的節點,返回一個列表。soup.select()是使用css selector語法查找,返回一個列表。

以下為示例代碼:

from selenium import webdriverfrom bs4 import BeautifulSoupdriver = webdriver.Chrome()driver.get(’https://www.dior.cn/zh_cn/女士精品/皮具系列/所有手提包’)soup = BeautifulSoup(driver.page_source, ’lxml’)products = soup.select(’li.is-product’)for product in products: name = product.find(’span’, class_=’product-title’).text.strip() price = product.find(’span’, class_=’price-line’).text.replace(’¥’, ’’).replace(’,’,’’) url = ’https://www.dior.cn’ + product.find(’a’, class_=’product-link’).attrs[’href’] img = product.find(’img’).attrs[’src’] sku = img.split(’/’)[-1] print(name, sku, price)driver.quit()

運行結果,如下圖:

Selenium結合BeautifulSoup4編寫簡單的python爬蟲

注:本例中,也可以使用requests.get()獲取網頁源代碼,格式和使用selenium加載的稍有不同。

一般簡單爬蟲編寫的步驟為:

進入列表頁,打開開發者工具,刷新頁面及向下滾動,查看新產品加載,是否能抓到XHR數據接口(直接返回JSON格式所有產品數據的接口) 如果有這種接口,嘗試修改參數中的分頁值,和請求總數值,看看是否能從一個接口返回所有的商品數據 如果只有Doc類型的接口返回頁面,嘗試使用requests.get()請求頁面,分析響應文本,是否包含所有商品數據 如果requests獲取不到商品數據或數據不全可以使用selenium加載頁面,然后使用bs4解析提取,如果有多個頁面,循環逐個操作即可。

以上就是Selenium結合BeautifulSoup4編寫簡單的python爬蟲的詳細內容,更多關于python 爬蟲的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产精品免费看久久久久 | 真正国产乱子伦高清对白 | 成人手机视频在线观看 | 欧美成人福利视频 | 亚洲永久免费 | 日产一区2区三区有限公司 日产一区两区三区 | 亚洲免费在线看 | 欧美大片无尺码在线观看 | 日韩一级精品视频在线观看 | 日韩美毛片 | 午夜精品影院 | 一级片中文字幕 | 一级片aaaa | 亚洲 欧美 日韩 在线 中文字幕 | 亚洲免费看片 | 久久亚洲综合中文字幕 | 一区二区三区影视 | 韩国午夜三级理论 | 超级碰碰碰在线观看 | 精品国产乱码久久久久久一区二区 | 亚洲日本一区二区三区高清在线 | 欧美日韩专区国产精品 | 欧美 在线 成 人怡红院 | 99国产精品久久久久久久成人热 | 久草视频福利资源站 | 国产一级在线观看视频 | 欧美综合在线观看 | 国产成人精品久久二区二区 | 成年女人免费看片 | 欧美日韩一本 | 亚洲免费视频网 | 爽爽爽爽爽爽爽成人免费观看 | 九九精品免视频国产成人 | 久久综合九色综合欧洲色 | 日本高清色视频www 日本高清在线精品一区二区三区 | 亚洲免费在线视频 | 黄色国产在线观看 | 国产午夜精品理论片在线 | 国产精品怡红院在线观看 | 亚洲日本高清影院毛片 | 久久最新视频 |