第一步:新建一個映射,以保存原來的chrome不被污染
- 添加環境變量
將chrome.exe放入系統環境變量中,找到驅動位置添加變量
- 新建一個存放新環境的文件夾並映射
使用指令【chrome.exe --remote-debugging-port=9222 --user-data-dir="E:\data_info\selenium_data"】
其中--remote-debugging-port是建立新的移植位置,其中端口后面會使用(自定義), --user-data-dir是數據存儲的目錄(自定義)
此時會打開一個網頁放着就行
第二步:selenium代碼接管
通過下面的代碼就可以登錄知乎
import time
import json
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
class ZhiHu:
def __init__(self):
self.url = 'https://www.zhihu.com/'
self.chrome_options = Options()
self.chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222") # 前面設置的端口號
self.browser = webdriver.Chrome(executable_path=r'E:\Environment\python_global\Scripts\chromedriver.exe', options=self.chrome_options) # executable執行webdriver驅動的文件
def get_start(self):
self.browser.get(self.url)
# time.sleep(20) # 可以選擇手動登錄或者是自動化,我這里登錄過就直接登陸了
info = self.browser.get_cookies() # 獲取cookies
print(info)
with open(r"..\download_txt\info.json", 'w', encoding='utf-8') as f:
f.write(json.dumps(info))
if __name__ == '__main__':
zhihu = ZhiHu()
zhihu.get_start()
三、結果展示