python基于selenium爬取斗魚彈幕
針對彈幕的爬取我們如果只需要獲取看到的網頁里面的而數據,使用selenium就能實現,對于直播平臺來說,往往有第三方平臺api讓你獲取數據(可以獲取發彈幕,發彈幕者的名字禮物等等,這需要客戶端向彈幕服務器發送登錄請求,心跳信息的發送等等)只獲取彈幕信息儲存到txt文件中,上代碼,上圖片
代碼如下:
import timefrom selenium import webdriverchrome_options = webdriver.ChromeOptions()# 使用headless無界面瀏覽器模式# chrome_options.add_argument(’--headless’)# chrome_options.add_argument(’--disable-gpu’)prefs = {'profile.managed_default_content_settings.images': 2}chrome_options.add_experimental_option('prefs', prefs)browser = webdriver.Chrome(chrome_options=chrome_options)url = ’https://www.douyu.com/’def getDanmu(homeId): homeHref = url+str(homeId) browser.get(homeHref) while 1: time.sleep(2) try: for i in browser.find_elements_by_xpath(’.//div[@class=' danmu-6e95c1']/div/div’):if len(i.text) > 0: try: print(i.text) except: pass saveDanmu(i.text)else: continue except: time.sleep(2) for i in browser.find_elements_by_xpath(’.//div[@class=' danmu-6e95c1']/div/div’):if len(i.text) > 0: try: print(i.text) except: pass saveDanmu(i.text)else: continuedef saveDanmu(danmu): with open(’danmu.txt’, ’a+’, encoding=’utf-8’)as f: f.write(danmu+’n’)if __name__ == ’__main__’: num = input(’請輸入需要查詢的房間號:’) getDanmu(num)
以上就是python基于selenium爬取斗魚彈幕的詳細內容,更多關于python 爬取斗魚彈幕的資料請關注好吧啦網其它相關文章!
相關文章:
