爬取百度任意類型的圖片

這個代碼主要依賴selenium爬取,requests庫僅僅實現下載功能。

from selenium import webdriver
import requests



def looking(mubiao):
    chrome_driver = 'E:\\chromedriver_win32\\chromedriver.exe'
    driver = webdriver.Chrome(executable_path = chrome_driver)
    driver.get('https://image.baidu.com/')
    driver.find_element_by_id('kw').send_keys(mubiao)
    driver.find_element_by_class_name('s_search').click()
    href = driver.find_element_by_name("pn0").get_attribute('href')
    print(href)
    return href
    driver.close()

def download(url,n):
    chrome_driver = 'E:\\chromedriver_win32\\chromedriver.exe'
    driver = webdriver.Chrome(executable_path = chrome_driver)
    driver.get(url)
    for i in range(n):
        ret = driver.find_element_by_class_name("currentImg").get_attribute("src")
        response = requests.get(ret)
        with open(r'E:\Photo\%s.jpg' % (i+1),'wb') as f:
            print("第",i+1,"張圖片下載完畢!!!")
            f.write(response.content)
        driver.find_element_by_xpath('//*[@id="container"]/span[2]/span').click()
    driver.close()

if __name__== "__main__":
    mubiao = input("請輸入要下載的圖片類型:")
    n = int(input("請輸入下載數量:"))
    url = looking(mubiao)
    download(url,n)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章