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

溫馨提示×

溫馨提示×

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

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

如何讓Python去爬取付費歌曲

發布時間:2021-10-26 09:17:24 來源:億速云 閱讀:527 作者:柒染 欄目:大數據

今天就跟大家聊聊有關如何讓Python去爬取付費歌曲,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

今天來教大家一個自動化爬蟲的工具 selenium

selenium

Selenium 是一個 Web 的自動化測試工具,最初是為網站自動化測試而開發的,就像玩游戲用的按鍵精靈,可以按指定的命令自動操作。

Selenium 測試工具直接操控瀏覽器中,就像真正的用戶在操作一樣。Selenium 可以根據的指令,讓瀏覽器自動加載頁面,獲取需要的數據,甚至頁面截屏,或者判斷網站上某些動作是否發生等。

項目目標

今天的目標是爬取付費歌曲

受害者地址

http://tool.liumingye.cn/music/?page=homePage

如何讓Python去爬取付費歌曲

爬蟲代碼

導入工具

import time
import requests
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

解析網頁

打開F12 開發者工具,不管三七二十一,先來一頓瞎分析~

如何讓Python去爬取付費歌曲

driver = webdriver.Chrome(executable_path='chromedriver.exe', options=chrome_options)
# key_world = input('請輸入歌手名字:')
driver.get('http://tool.liumingye.cn/music/?page=searchPage')
driver.find_element_by_css_selector('#input').send_keys('張杰')
driver.find_element_by_css_selector('#search  button:nth-child(2) i').click()
def download(name, url):
    filename = 'C:\\Users\\Administrator\\Desktop\\音樂\\' + name + '.mp3'
    response = requests.get(url=url)
    with open(filename, mode='wb') as f:
        f.write(response.content)

def drop_down():
    """模擬人去滾動鼠標向下瀏覽頁面"""
    for x in range(1, 20, 10):
        time.sleep(0.5)
        j = x / 10
        js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight * %f' % j
        driver.execute_script(js)


lis = driver.find_elements_by_css_selector('#player li')
f = 0
for li in lis:
    f += 1
    name = li.find_element_by_css_selector('.aplayer-list-title').text
    li.find_element_by_css_selector('.aplayer-list-download').click()
    down_url = driver.find_element_by_css_selector('#m-download > div > div > div.modal-body > div:nth-child(6) > div.input-group-append > a.btn.btn-outline-secondary.download').get_attribute('href')
    driver.find_element_by_css_selector('#m-download > div > div > div.modal-header > button').click()
    # time.sleep(1)
    download(name, down_url)
    print(name, down_url)
    if f % 10 == 0:
        drop_down()

運行代碼后,效果如下

如何讓Python去爬取付費歌曲

如何讓Python去爬取付費歌曲

看完上述內容,你們對如何讓Python去爬取付費歌曲有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

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

AI

霸州市| 汉沽区| 砚山县| 梁河县| 贡嘎县| 洞口县| 鞍山市| 西乡县| 册亨县| 台州市| 淳化县| 上栗县| 九龙坡区| 亳州市| 西充县| 密山市| 双流县| 肥东县| 黄陵县| 深水埗区| 武隆县| 团风县| 天等县| 时尚| 彭水| 琼中| 阿勒泰市| 图们市| 新昌县| 抚远县| 乌兰察布市| 龙口市| 杭州市| 和龙市| 米泉市| 贡觉县| 潜山县| 会东县| 昌图县| 广汉市| 晋中市|