蜜桃av色欲a片精品一区,麻豆aⅴ精品无码一区二区,亚洲人成网站在线播放影院在线,亚洲 素人 字幕 在线 最新

微立頂科技

新聞資訊

創(chuàng)新 服務(wù) 價(jià)值

  分享一個(gè)特殊的網(wǎng)站采集方案和代碼

發(fā)布日期:2023/11/19 16:10:34      瀏覽量:

一般的文章類(lèi)型網(wǎng)站采集,每個(gè)欄目都有一個(gè)固定名稱(chēng)的文件夾,列表頁(yè)也有明確的分頁(yè)標(biāo)簽,這種網(wǎng)站采集很容易實(shí)現(xiàn)

下面這個(gè)科學(xué)網(wǎng)站,就很特別,應(yīng)該采用的動(dòng)態(tài)參數(shù),每個(gè)欄目進(jìn)去參數(shù)不同,但是每個(gè)分頁(yè)的頁(yè)面地址都一毛一樣~

初步判斷是,每個(gè)分類(lèi)進(jìn)去帶的動(dòng)態(tài)參數(shù)存進(jìn)了全局變量,每個(gè)分頁(yè)都是后臺(tái)進(jìn)行的動(dòng)態(tài)加載+JS實(shí)現(xiàn)的,所以,采集這種網(wǎng)站,采集分頁(yè)還必須通過(guò)每個(gè)欄目的主頁(yè)進(jìn)去,使用瀏覽器的Driver來(lái)動(dòng)態(tài)模擬進(jìn)行操作,檢測(cè)到操作結(jié)果完成后,再取HTML代碼進(jìn)行分析采集和使用

參考案例和代碼如下:


Code:


from selenium import webdriver
from selenium.webdriver.edge.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

# 用戶(hù)應(yīng)根據(jù)自己的環(huán)境修改WebDriver路徑
webdriver_path = ’C:/Windows/System32/msedgedriver.exe’

# 使用Service對(duì)象指定Edge WebDriver路徑
s = Service(executable_path=webdriver_path)
driver = webdriver.Edge(service=s)

# 打開(kāi)欄目網(wǎng)頁(yè)入口地址
driver.get(’https://book.sciencereading.cn/shop/book/Booksimple/list.do?showQueryModel.dp1Value=75e48243889111e7a2df00163e2ed6f9’)

def get_page_html(page_number):
    try:
        # 等待分頁(yè)導(dǎo)航的出現(xiàn)
        WebDriverWait(driver, 30).until(
            EC.presence_of_element_located((By.CLASS_NAME, ’pagination’))
        )

        # 如果不是第一頁(yè),點(diǎn)擊對(duì)應(yīng)頁(yè)碼
        if page_number != 1:

            driver.execute_script(f"setPageNumber(’{page_number}’)")

            # 等待新頁(yè)面加載
            WebDriverWait(driver, 30).until(
                EC.presence_of_all_elements_located((By.CLASS_NAME, ’pagination’))  # 需要根據(jù)頁(yè)面實(shí)際內(nèi)容修改
            )
           

        # 返回頁(yè)面HTML
        return driver.page_source
    except Exception as e:
        print(f"An error occurred: {e}")
        return None

# 獲取第3頁(yè)的HTML
page_1_html = get_page_html(1)

page_3_html = get_page_html(3)

# 關(guān)閉WebDriver
driver.quit()

print(page_3_html)




  業(yè)務(wù)實(shí)施流程

需求調(diào)研 →

團(tuán)隊(duì)組建和動(dòng)員 →

數(shù)據(jù)初始化 →

調(diào)試完善 →

解決方案和選型 →

硬件網(wǎng)絡(luò)部署 →

系統(tǒng)部署試運(yùn)行 →

系統(tǒng)正式上線(xiàn) →

合作協(xié)議

系統(tǒng)開(kāi)發(fā)/整合

制作文檔和員工培訓(xùn)

售后服務(wù)

馬上咨詢(xún): 如果您有業(yè)務(wù)方面的問(wèn)題或者需求,歡迎您咨詢(xún)!我們帶來(lái)的不僅僅是技術(shù),還有行業(yè)經(jīng)驗(yàn)積累。
QQ: 39764417/308460098     Phone: 13 9800 1 9844 / 135 6887 9550     聯(lián)系人:石先生/雷先生