利用Python selenium 来获取jd
selenium + python自动化测试环境搭建selenium是一个web的自动化测试工具
搭建平台windows 准备工具如下:
下载pythonhttps://www.python.org/
window安装步骤:
1、下载python安装。
https://www.python.org/downloads/进入选择需要的的Python版本
选择了版本后,下拉到最下面
根据自己的操作系统32/64 位,选择相应的版本。安装过程我就没必要描述,我的安装目录为:C:\Program Files\Python
2、进入cmd(windows命令提示符)下面输入"python"命令。
应该安装的时,有一个添加到path的选项(如果提示python不是内部或外部命令!别急,去配置一下环境变量吧)
修改我的电脑->属性->高级->环境变量->系统变量中的PATH为:变量名:PATH变量值:;C:\Program Files\Python;C:\Program Files\Python\Scripts;
3、安装selenium
3.1、通过pip 安装C:\Users\14467>python3 -m pip install selenium
3.2、通过下载包安装或者直接下载selenium包:https://pypi.python.org/pypi/selenium解压,cmd进入目录:C:\Users\14467> python3 setup.py install
4、 下载安装geckodriver
下载地址:https://github.com/mozilla/geckodriver/releases
下载自己所需的版本
下载完成后,解压,将geckodriver.exe放置在与python3.exe相同的路径下:
https://img-blog.csdn.net/20170831201954152?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvRmxvcmFDSFk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
注意: 这里之所以将geckodriver.exe与Python3.exe放置在相同路径下,是因为python3.exe在系统的环境变量中的Path中有配置:【D:\Program Files\Python36\】。如果不放置到相同路径,需要自己在Path中配置环境变量,路径为geckodriver所在路径。
获取CK的代码
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
import json
#选择火狐浏览器,这个位置可以改的
options = webdriver.FirefoxOptions()
#设置user-agent
options.set_preference("general.useragent.override","jdapp;android;10.0.6;11;9363537336739353-2636733333439346;network/wifi;model/KB2000;addressid/138121554;aid/9657c795bc73349d;oaid/;osVer/30;appBuild/88852;partner/oppo;eufv/1;jdSupportDarkMode/0;Mozilla/5.0 (Linux; Android 11; KB2000 Build/RP1A.201005.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/77.0.3865.120 MQQBrowser/6.2 TBS/045537 Mobile Safari/537.36")
browser = webdriver.Firefox(options=options)
browser.set_window_size(400,800)
browser.get("https://plogin.m.jd.com/login/login")
# 第一种方法,延迟60秒后才输出
# time.sleep(60)
#
# cookies = browser.get_cookies()
# pt_key = ''
# pt_pin = ''
# print(cookies)
# for cookie in cookies:
# if(cookie["name"]=="pt_pin"):
# pt_pin = cookie['value']
# if (cookie["name"] == "pt_key"):
# pt_key = cookie['value']
# print("pt_pin="+pt_pin+";"+"pt_key="+pt_key+";")
# 第二种方法,当url变成手机京东主页了就可以使用了
while True:
url = browser.current_url
if(url == "https://m.jd.com/"):
cookies = browser.get_cookies()
pt_key = ''
pt_pin = ''
for cookie in cookies:
if (cookie["name"] == "pt_pin"):
pt_pin = cookie['value']
if (cookie["name"] == "pt_key"):
pt_key = cookie['value']
print("pt_key=" + pt_key + ";"+"pt_pin=" + pt_pin + ";")
break
试试playwright,能录制操作,挺方便。 快乐的小萌新 发表于 2022-3-2 13:06
这个我确实没考虑到,下次详细点,这个有点python的基础的应该晓得如何处理
而且手动登录了不如就原浏览器登录,装个取ck的插件,比你这样快 排版乱了,大家轻点喷{:1_923:} 京东不检测才怪 和老师们学习学习 Xw丶小威 发表于 2022-3-2 10:21
试试playwright,能录制操作,挺方便。
这些都简单,文字就可以了 zucker 发表于 2022-3-2 10:14
京东不检测才怪
这个不检测啊,这个就是网页登录的啊 来学习下 学习一下,了解一下 快乐的小萌新 发表于 2022-3-2 10:54
这个不检测啊,这个就是网页登录的啊
你这个脚本获取ck,要登录,就是手动登录,你没写登录的办法
页:
[1]
2