中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python怎么實現數據挖掘

發布時間:2021-11-20 16:36:46 來源:億速云 閱讀:284 作者:iii 欄目:編程語言

本篇內容主要講解“Python怎么實現數據挖掘”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python怎么實現數據挖掘”吧!

這個Selenium模塊主要是應對我們自動瀏覽網頁數據所需要用的,讓程序來執行半智能,前提你要教會它去做什么事情!

直接介紹此次所需要用到的家族模塊:

1 from selenium import webdriver2 import time3 from selenium.webdriver.common.keys import Keys4 from selenium.webdriver.common.action_chains import ActionChains5 from selenium.webdriver.common.by import By

一、每一個解釋一下哈,按順序對號:

1、主模塊的嵌入,主要是應對控制程序自動打開瀏覽器瀏覽網頁功能。

2、作為開發人員,尤其是對網頁自動化測試的開發工具必須需要time模塊來制約程序的訪問時間,因為可能網站會直接把你IP封掉。

3、selenium 模塊家族成員Keys,此成員是應當以模擬鍵盤操作,應對模擬輸入用戶登錄名和密碼,或者價值數據索引輸入。

4、selenium 模塊家族成員ActionChains,它則是應對模擬鼠標操作,對與鼠標的雙擊,單擊,左右鍵,應對我們翻頁,搜索按鈕的點擊功能。

5、selenium 模塊家族成員By,這個則是我們要教會它所要做的事情,也是我們數據挖掘又要用到的核心價值功能之一,應對價值數據抓取。

二、開發初步:

1、操作程序打開瀏覽器并打開我們需要進入的網頁:

1 url = 'https://www.xxx.com'2 driver=webdriver.Chrome()3 driver.get(url)4 time.sleep(5)5 driver.quit()

這里可以自己測試一下,我所使用的是Google的瀏覽器,你們可以嘗試使用Firefox,他們有一些的區別,主要是站點的區別!

2、進入頁面后鎖定tag

html:

1 <div id="aaa" class="bbb" name="ccc">2 <p></p>3 <p><a></p>4 </div>

python:

1 element = driver.find_element_by_id("aaa") 2 frame = driver.find_element_by_tag_name("div") 3 cheese = driver.find_element_by_name("ccc") 4 cheeses = driver.find_elements_by_class_name("bbb") 5 6 or 7 8 from selenium.webdriver.common.by import By 9 element = driver.find_element(by=By.ID, value="aaa")10 frame = driver.find_element(By.TAG_NAME, "div")11 cheese = driver.find_element(By.NAME, "ccc")12 cheeses = driver.find_elements(By.CLASS_NAME, "bbb")

這里每一個都是鎖定tag樹,它們都是根據id,class,name,tagname來定義的。

1 xpath_class = driver.find_element_by_xpath('//div[@class="bbb"]/p')2 xpath_id = driver.find_element_by_xpath('//div[@id="aaa"]/p')

這是通用方法的,Xpath方法,它們都輸屬于解析網頁的內容鎖定tag。

3、處理操作:

當我們鎖定功能鍵的tag屬性的時候,我們就可以進一步操作,比如換頁,搜索功能的實現

這里我們就介紹一下模擬鼠標的操作:

1 elem = driver.find_element_by_xpath('//a[@id="tagname"]')2 ActionChains(driver).double_click(elem).perform()3 time.sleep(3)

因為時間問題,我只是介紹一下鼠標左鍵單擊換頁操作,其他的何以參考一下官方文檔:Selenium Webdrive

ActionChains:鎖定瀏覽器,double_click鎖定tag標簽樹,.perform():點擊標簽樹

4、獲取價值數據

這里的操作類似與Xpath的語法:

driver.find_elements_by_tag_name('td')[3].text
driver.find_elements_by_tag_name('a').get_attribute('href')

這里注意一下elements,指所有的tag-> a比標簽的href,這里是list格式,需要遍歷。

5、最后來一串完整代碼:

 1 from selenium import webdriver 2 import time 3 import lxml.html as HTML 4 from bs4 import BeautifulSoup 5 from selenium.webdriver.common.keys import Keys 6 from selenium.webdriver.common.action_chains import ActionChains 7 from pymongo import MongoClient,ASCENDING, DESCENDING 8 from selenium.webdriver.common.by import By 9 def parser():10 url = 'https://www.xxx.com'11 driver=webdriver.Chrome()12 driver.get(url)13 time.sleep(5)14 for i in range(1,675):15 a = driver.find_element_by_xpath('//div[@class="aaa"]')16 tr = a.find_elements_by_tag_name('tr')17 for j in xrange(1,len(tr)):18 quantity = tr[j].find_elements_by_tag_name('td')[3].text19 producturl = tr[j].find_elements_by_tag_name('td')[0].find_elements_by_tag_name("div")[1].find_element_by_tag_name('ul').find_element_by_tag_name('li').find_element_by_tag_name('a').get_attribute('href')20 producturl_db(producturl,quantity)21 elem = driver.find_element_by_xpath('//a[@id="eleNextPage"]')22 ActionChains(driver).double_click(elem).perform()23 time.sleep(3)24 25 driver.quit()

selenium有個小GUB,就是在用Xpath的時候,你已經找到父級tag,但是這個父級很多,比如tr,你如果遍歷它,尋找td的話,那么你還是使用find_elements_by_tag_name,因為那個會初始化,不會管你找到那個父級。

到此,相信大家對“Python怎么實現數據挖掘”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

和顺县| 陆良县| 浦北县| 于田县| 乌苏市| 灵武市| 乐安县| 九龙城区| 平安县| 玉环县| 观塘区| 新沂市| 合水县| 宝坻区| 上蔡县| 乐昌市| 会理县| 扎囊县| 南投市| 泾阳县| 高雄市| 合水县| 祁阳县| 肇庆市| 上虞市| 临汾市| 革吉县| 茌平县| 濉溪县| 花莲市| 碌曲县| 长沙县| 阿拉善左旗| 淮南市| 镇坪县| 上饶市| 马边| 宝丰县| 大理市| 肇源县| 梁平县|