某新聞網站資料學習
阿新 • • 發佈:2018-12-02
前兩天看到某個博友噴另外一個人通過js騙取關注,唉,突然就覺得,騙關注不對的話,那咱們就互相關注吧,這樣你至少看一下我,看的人多了,我也就覺得我寫的東西還有看的價值,才會更加努力的去寫更好的部落格!
下面的程式碼只是給大家提供一個思路,關鍵地方我已用對應的引數名稱替換了!通過這段程式碼,我發現自己不僅僅有熟悉了一下python的基本語法,同時也對資料探勘和清洗有了一定的認識!經常聽別人說資料探勘,感覺
非常的高大上,但這次的程式碼編寫,發現從最開始的挖掘到很多無用資料,到對無用資料的清洗,再到轉換挖掘大方向,發現了想真正找到有用的資料,從最開始就應該明確自己真正需要的資料,最好從開始就能指定一個精確的採集
資料的方案,否則後期的資料分類整理,是非常麻煩的!
from selenium import webdriver from string import Template import time import random def attention(): i=84720 b = webdriver.Chrome() b.maximize_window() b.get("https://passport.csdn.net/passport_fe/login.html") b.find_element_by_id("id").click() b.find_element_by_id("username").send_keys("使用者名稱") time.sleep(3) b.find_element_by_id("password-number").send_keys("密碼") time.sleep(3) b.find_element_by_id("id").click() time.sleep(3) while i > 1: i = i - 1 try: # for newsNumber in range(1,100): newsNumber=str(newsNumber) b.get("某網站") time.sleep(0.8) newsPath = "id" + newsNumber newsUrl = b.find_element_by_id(newsPath).get_attribute("href") b.get(newsUrl) time.sleep(0.5) attentionStatus = b.find_element_by_id('id').text if attentionStatus == '已關注': newsUrl=str(newsUrl) attentionNewsUrl=newsUrl.replace("newsUrl","點贊介面") b.get(attentionNewsUrl) time.sleep(12) print("已關注: ") else: b.find_element_by_id('//*[@id="btnAttent"]').click() newsUrl = str(newsUrl) attentionNewsUrl = newsUrl.replace("newsUrl", "點贊介面") b.get(attentionNewsUrl) time.sleep(0.5) except: js = "var q=document.documentElement.scrollTop=100000" b.execute_script(js) time.sleep(3) continue b.get("某網站/#/uc/att-list") try: js = "var q=document.documentElement.scrollTop=100000" b.execute_script(js) time.sleep(1) b.find_element_by_id("id").click() time.sleep(1) for n in range(1,5): n = n + 1 b.find_element_by_id("id").click() time.sleep(1) for m in range(1, 19): m = m + 1 m = str(m) b.find_element_by_id("id" + m ).click() time.sleep(0.2) except: continue attention()