1: 問題の導入
コンピュータは全能であるため (私にスプレーしないでください、個人的な意見です)、私たちはいくつかの問題に対処するときにコンピュータを使用して支援することができます。
2: 今日は、Python の Selenium モジュールを使用して NetEase Cloud Music QQ 番号の自動ログインを実現する方法を紹介します。
3: コードは次のとおりです
# 导入时间模块
import time
# 导入webdriver模块
from selenium import webdriver
# 导入By模块
from selenium.webdriver.common.by import By
# 实例化浏览器对象
driver=webdriver.Chrome()
# 进行浏览器的自动化
driver.get('https://music.163.com/')
# 隐式等待10秒钟(如果网页渲染不需要十秒钟就会提前结束)
driver.implicitly_wait(10)
# 最大化浏览器
driver.maximize_window()
# 点击登录
driver.find_element(By.CSS_SELECTOR,'.link.s-fc3').click()
# 强制睡眠2秒钟,有跳转的都需要等待浏览器的渲染,不然浏览器的响应速度跟不上代码的响应的时间(下面的都是一样的道理)
time.sleep(2)
# 点击其他方式登录
driver.find_element(By.CSS_SELECTOR,'div._1a7hecWJ > div > div > div > a').click()
time.sleep(2)
# 点击同意框
driver.find_element(By.CSS_SELECTOR,'#j-official-terms').click()
# 点击QQ登录
driver.find_element(By.CSS_SELECTOR,'div._3x8w3YCi > ul > li:nth-child(2) > a').click()
time.sleep(2)
# 获取当前浏览器所有的页面句柄
windows = driver.window_handles
# print(windows) 查看当前的网页有多少(可能我说的也不正确啊,可以不用管)
# 跳转到第二个页面,里面嵌套了网页了,不跳转的话,selenium访问不到
driver.switch_to.window(windows[1])
# 目标是嵌套元素,使用对应的函数,跳转到嵌套的网页
driver.switch_to.frame('ptlogin_iframe')
# 点击密码登录
driver.find_element(By.CSS_SELECTOR, '#switcher_plogin').click()
time.sleep(3)
# 获取当前浏览器所有的页面句柄
windows = driver.window_handles
# 跳转到第二个页面,里面嵌套了网页了,不跳转的话,selenium访问不到
driver.switch_to.window(windows[1])
# 跳转到第二个页面,里面嵌套了网页了,不跳转的话,selenium访问不到
driver.switch_to.frame(0)
# 输入你的QQ号
driver.find_element(By.CSS_SELECTOR, '#u').send_keys('QQ号')
time.sleep(2)
# 输入你的密码
driver.find_element(By.CSS_SELECTOR, '#p').send_keys('密码')
time.sleep(2)
# 点击登录
driver.find_element(By.CSS_SELECTOR, '#login_button').click()
time.sleep(3)
# 阻塞一下
input()
# 退出浏览器
driver.quit()
4: 問題への注意
1. コードの環境は自分で設定する必要があり、すべてが実行できるわけではありません
① seleniumを使用する場合に必要な.exeファイルを設定します ここではChromeブラウザを使用します ブラウザとバージョンに応じて適切なファイルを選択することもできます
②リンクアドレス
③ ブラウザの右上隅にある 3 つの点を見つけて (クリックし)、「ヘルプ」をクリックし、「バージョン情報」をクリックしてブラウザのバージョン番号を表示します。ここではバージョン 113.0.5672.63 を示します。バージョン番号は必ずしも必要ではありません。正確に言ってください。それが正しければそれでいいのですが、