使用 selenium?瀏覽器自動化測試框架 爬取網易云音樂電臺專欄
代碼
?
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2019/7/9 21:02
# @Author : nick
# @Site : http://www.isscollege.com/
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
# 實例化一個啟動參數對象
chrome_options = Options()
# 設置瀏覽器以無界面方式運行
# chrome_options.add_argument('--headless')
# browser = webdriver.Chrome(chrome_options=chrome_options)
browser = webdriver.Chrome()
browser.maximize_window() # 窗口最大化
browser.get('https://music.163.com/#/discover/djradio') # URL
browser.implicitly_wait(30) # 隱示等待,為了等待充分加載好網址
browser.switch_to.frame("contentFrame")#轉換到我們需要的數據的frame,一定不要忘記
result_list = browser.find_element_by_class_name("f-fl").find_elements_by_class_name("itm")
#print(result_list)
#print(type(result_list))
# 打印列表中的類容
print("推薦節目")
for result in result_list:
name = result.find_element_by_class_name("s-fc4").text #電臺名
subscribe = result.find_element_by_class_name("s-fc1").text #簡介
type = result.find_element_by_class_name("u-type").text #類型
url = result.find_element_by_class_name("s-fc1").get_attribute("href") #鏈接
print("電臺名:{},簡介:{},類型:{},url:{}".format(name,subscribe,type,url))
print("節目排行榜")
result_list = browser.find_element_by_class_name("f-fr").find_elements_by_class_name("itm")
for result in result_list:
rank = result.find_element_by_class_name("f-fs1").text #排名
name = result.find_element_by_class_name("s-fc1").text #節目名
url = result.find_element_by_class_name("f-fw0").get_attribute("href") #鏈接
print("排名:{},節目名:{},url:{}".format(rank,name,url))
?
?
運行截圖:
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

