使用selenium實現(xiàn)web自動化抓取-以qq空間說說內容
# 分析網頁源代碼?
可知.txt-box.txt-big-size存放說說內容?.comments-content存放好友評論

# 使用的庫
from selenium import webdriver
import time
from selenium.webdriver.common.by import By

# 調用webdrive
options = webdriver.EdgeOptions()
# options.add_argument('headless') ?# options.add_argument('--headless')? ?# 取消可視化
browser = webdriver.Edge('msedgedriver', options=options)
browser.maximize_window()

# 自動化登錄qq空間
def get_response(qq_num):
? ?try:
? ? ? ?browser.get('https://user.qzone.qq.com/{}'.format(qq_num))
? ? ? ?browser.switch_to.frame('login_frame')
? ? ? ?browser.find_element(By.ID, value='switcher_plogin').click()
? ? ? ?browser.find_element(By.ID, value='u').clear()
? ? ? ?browser.find_element(By.ID, value='u').send_keys('qq')
? ? ? ?browser.find_element(By.ID, value='p').clear()
? ? ? ?browser.find_element(By.ID, value='p').send_keys(’password')
? ? ? ?browser.find_element(By.ID, value='login_button').click()
? ? ? ?time.sleep(5)
????????#?使用css選擇器查找評論
????????contents = browser.find_elements(By.CSS_SELECTOR, value='.txt-box.txt-big-size')
????????comments = browser.find_elements(By.CSS_SELECTOR, value='.comments-content')
????????for content in contents:
? ?????????????print(content.text)
????????for comment in comments:
? ?????????print(comment.text)
????????time.sleep(2)
????except Exception as e:
? ?????print(e)

# 運行程序
if __name__ == '__main__':
? ?get_response('qq')




# 同理分析url和源代碼? 也可以抓取好友空間信息 也可以保存二進制格式文件 如圖片等。