selenium 配置及 Python 通过 selenium 模块登录账号获取cookie
安装selenium模块
pip install selenium
下载浏览器驱动,查下自己的浏览器版本,然后修改下面的URL链接的版本号,下载对应的版本即可
http://chromedriver.storage.googleapis.com/index.html?path=99.0.4844.51/
配置selenium变量
网上有很多方法,但实践下来都有问题,最省事的就是
把下载的压缩包,直接解压进 Python的运行目录:C:\Program Files\python
登录账号获取cookie及页面代码的完整代码:
def get_cook(): # 设置无界面模式 opt = webdriver.ChromeOptions() opt.add_argument("--headless") driver = webdriver.Chrome(options=opt) # driver = webdriver.Chrome() # 去除以上代码为有界面模式 driver.get("https://backstage.xxxxx.com/login") driver.implicitly_wait(0.5) # 通过Xpath定位 用户名、密码及提交输入框 search_box = driver.find_element(By.XPATH, "/html/body/div/div[1]/div[2]/form/div[1]/input").send_keys('zhxxxx') search_button = driver.find_element(By.XPATH, "/html/body/div/div[1]/div[2]/form/div[2]/input").send_keys('zhxxxx') driver.find_element(By.XPATH,'/html/body/div/div[1]/div[2]/form/div[4]/button').click() cookie_items = driver.get_cookies() cookie_str = "" #组装cookie字符串 for item_cookie in cookie_items: item_str = item_cookie["name"]+"="+item_cookie["value"]+"; " cookie_str += item_str page = driver.page_source token = re.search(r'<meta name="csrf-token" content="(.*?)">',page,flags=re.I)[1] driver.close() return cookie_str,token