Files
F6--/F6系统常用脚本/修改项目信息-工时单价.ipynb
T
2026-01-30 11:28:35 +08:00

290 lines
13 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"# -*- coding:UTF-8 -*-\n",
"# 功能:F6修改项目信息-工时单价\n",
"from selenium import webdriver\n",
"from selenium.webdriver.support.ui import Select\n",
"from selenium.webdriver import ActionChains\n",
"import time\n",
"import xlrd\n",
"import xlwt\n",
"import re\n",
"from xlutils.copy import copy\n",
"from selenium.webdriver.common.keys import Keys\n",
"from selenium.webdriver.support.ui import WebDriverWait\n",
"import datetime\n",
"from selenium import webdriver\n",
"from selenium.webdriver.support.ui import Select\n",
"from selenium.webdriver import ActionChains\n",
"import time\n",
"import xlrd\n",
"import xlwt\n",
"import re\n",
"from xlutils.copy import copy\n",
"from selenium.webdriver.common.keys import Keys\n",
"from selenium.webdriver.support.ui import WebDriverWait\n",
"import datetime\n",
"import os\n",
"from selenium.webdriver.support import expected_conditions as EC\n",
"from selenium.webdriver.common.by import By\n",
"from selenium.webdriver.support.wait import WebDriverWait\n",
"import pandas as pd\n",
"\n",
"# 获取会员卡基础信息\n",
"name = '18906245518'\n",
"password = 'Jb123456'\n",
"option_chrome = webdriver.ChromeOptions()\n",
"option_chrome.add_argument('--headless')\n",
"\n",
"http = 'https://m.f6car.cn/'\n",
"# 进入链接获取json\n",
"# driver = webdriver.Chrome(chrome_options=option_chrome)\n",
"driver = webdriver.Chrome(executable_path=r\"C:\\Users\\admin\\Desktop\\Python脚本\\chromedriver.exe\")\n",
"driver.maximize_window()\n",
"driver.implicitly_wait(2)\n",
"driver.get(http)\n",
"driver.find_element_by_xpath('//*[@id=\"pane-username\"]/form/div[1]/div/div/input').send_keys(name)\n",
"driver.find_element_by_xpath('//*[@id=\"pane-username\"]/form/div[2]/div/div[1]/input').send_keys(password)\n",
"driver.find_element_by_xpath('//*[@id=\"pane-username\"]/form/div[3]/div/button/span').click()\n",
"time.sleep(5) # 预设时间\n",
"\n",
"# 新建一个excel文件\n",
"file = xlwt.Workbook() # 注意这里的Workbook首字母是大写,无语吧\n",
"# 新建sheet\n",
"table = file.add_sheet('sheet name', cell_overwrite_ok=True)\n",
"if 1 == 1:\n",
" he = 0\n",
" hen = 0\n",
" heng = 0\n",
" hang = 0\n",
" len = 0\n",
"# 获取所有内容\n",
"# 打开excel文件\n",
"data = xlrd.open_workbook(r'C:\\Users\\admin\\Desktop\\新建XLS 工作表 (3).xls') \n",
"print(data)\n",
"table = data.sheet_by_index(0) # 通过索引顺序获取\n",
"h = table.nrows\n",
"l = table.ncols\n",
"print(u\"表数据的行数为%s,列数为%s\" % (h, l))\n",
"\n",
"# 获取卡项目\n",
"for i in range(1, h):\n",
" starttime = datetime.datetime.now()\n",
" idMember = table.cell(i, 0).value # 按行读取数据\n",
" https = 'https://yunxiu.f6car.cn/erp/view/index.html#/index/frame?pageType=vue&toUrl=%2F%2Fids-goods.f6car.cn%2Ff6-ids-goods%2Fview%2FserviceInfo.html&_ts=1706520727551&route=%2FeditServiceInfo%2F3%2F'+idMember\n",
" # http = 'https://yunxiu-trial.f6car.cn/kzf6/payment/toGathering.do?idSourceBill=' + idMember + '&billType=TKD'\n",
" # 进入链接获取json\n",
" driver.get(https)\n",
" time.sleep(0.2)\n",
" driver.switch_to.frame('erp-qiankun-iframe')\n",
" driver.find_element_by_xpath('/html/body/div/div[1]/div[3]/span/button[1]/span').click()\n",
" # enter = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, r'/html/body/div/div[1]/div[3]/span/button[1]/span')))\n",
" # enter.clear()\n",
" time.sleep(0.2)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[1]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[2]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[3]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[4]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[5]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" time.sleep(0.2)\n",
" driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/div/button[1]/span').click()\n",
" time.sleep(0.2)\n",
" driver.switch_to.default_content()\n",
" # 点击首页\n",
" driver.find_element_by_xpath('/html/body/div[1]/div[1]/div[1]/div[1]/div/div[2]/div/div[1]/div').click()\n",
" time.sleep(0.2)\n",
" endtime = datetime.datetime.now()\n",
" implement = (endtime - starttime).seconds\n",
" print(i, implement)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 运行"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<xlrd.book.Book object at 0x000001F1477FFD90>\n",
"表数据的行数为3,列数为1\n",
"1 4\n",
"2 3\n"
]
}
],
"source": [
"# -*- coding:UTF-8 -*-\n",
"# 功能:F6修改项目信息-工时单价\n",
"from selenium import webdriver\n",
"from selenium.webdriver.support.ui import Select\n",
"from selenium.webdriver import ActionChains\n",
"import time\n",
"import xlrd\n",
"import xlwt\n",
"import re\n",
"from xlutils.copy import copy\n",
"from selenium.webdriver.common.keys import Keys\n",
"from selenium.webdriver.support.ui import WebDriverWait\n",
"import datetime\n",
"from selenium import webdriver\n",
"from selenium.webdriver.support.ui import Select\n",
"from selenium.webdriver import ActionChains\n",
"import time\n",
"import xlrd\n",
"import xlwt\n",
"import re\n",
"from xlutils.copy import copy\n",
"from selenium.webdriver.common.keys import Keys\n",
"from selenium.webdriver.support.ui import WebDriverWait\n",
"import datetime\n",
"import os\n",
"from selenium.webdriver.support import expected_conditions as EC\n",
"from selenium.webdriver.common.by import By\n",
"from selenium.webdriver.support.wait import WebDriverWait\n",
"import pandas as pd\n",
"\n",
"# 获取会员卡基础信息\n",
"name = '18906245518'\n",
"password = 'Jb123456'\n",
"option_chrome = webdriver.ChromeOptions()\n",
"option_chrome.add_argument('--headless')\n",
"\n",
"http = 'https://m.f6car.cn/'\n",
"# 进入链接获取json\n",
"# driver = webdriver.Chrome(chrome_options=option_chrome)\n",
"driver = webdriver.Chrome(executable_path=r\"C:\\Users\\admin\\Desktop\\Python脚本\\chromedriver.exe\")\n",
"driver.maximize_window()\n",
"driver.implicitly_wait(2)\n",
"driver.get(http)\n",
"driver.find_element_by_xpath('//*[@id=\"pane-username\"]/form/div[1]/div/div/input').send_keys(name)\n",
"driver.find_element_by_xpath('//*[@id=\"pane-username\"]/form/div[2]/div/div[1]/input').send_keys(password)\n",
"driver.find_element_by_xpath('//*[@id=\"pane-username\"]/form/div[3]/div/button/span').click()\n",
"time.sleep(10) # 预设时间\n",
"\n",
"# 新建一个excel文件\n",
"file = xlwt.Workbook() # 注意这里的Workbook首字母是大写,无语吧\n",
"# 新建sheet\n",
"table = file.add_sheet('sheet name', cell_overwrite_ok=True)\n",
"if 1 == 1:\n",
" he = 0\n",
" hen = 0\n",
" heng = 0\n",
" hang = 0\n",
" len = 0\n",
"# 获取所有内容\n",
"# 打开excel文件\n",
"data = xlrd.open_workbook(r'C:\\Users\\admin\\Desktop\\新建XLS 工作表 (3).xls') \n",
"print(data)\n",
"table = data.sheet_by_index(0) # 通过索引顺序获取\n",
"h = table.nrows\n",
"l = table.ncols\n",
"print(u\"表数据的行数为%s,列数为%s\" % (h, l))\n",
"\n",
"# 获取卡项目\n",
"for i in range(1, h):\n",
" starttime = datetime.datetime.now()\n",
" idMember = table.cell(i, 0).value # 按行读取数据\n",
" https = 'https://yunxiu.f6car.cn/erp/view/index.html#/index/frame?pageType=vue&toUrl=%2F%2Fids-goods.f6car.cn%2Ff6-ids-goods%2Fview%2FserviceInfo.html&_ts=1706520727551&route=%2FeditServiceInfo%2F3%2F'+idMember\n",
" # http = 'https://yunxiu-trial.f6car.cn/kzf6/payment/toGathering.do?idSourceBill=' + idMember + '&billType=TKD'\n",
" # 进入链接获取json\n",
" driver.get(https)\n",
" time.sleep(0.2)\n",
" driver.switch_to.frame('erp-qiankun-iframe')\n",
" driver.find_element_by_xpath('/html/body/div/div[1]/div[3]/span/button[1]/span').click()\n",
" # enter = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, r'/html/body/div/div[1]/div[3]/span/button[1]/span')))\n",
" # enter.clear()\n",
" time.sleep(0.2)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[1]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[2]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[3]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[4]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" # time.sleep(0.5)\n",
" input_bos = driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/form/div[3]/div/div/div/div[3]/table/tbody/tr[5]/td[2]/div/div/input')\n",
" input_bos.send_keys(Keys.CONTROL, 'a')\n",
" input_bos.send_keys(Keys.BACK_SPACE)\n",
" input_bos.send_keys(38)\n",
" time.sleep(0.2)\n",
" driver.find_element_by_xpath('//*[@id=\"priceDialog\"]/div/button[1]/span').click()\n",
" time.sleep(0.2)\n",
" driver.switch_to.default_content()\n",
" # 点击首页\n",
" driver.find_element_by_xpath('/html/body/div[1]/div[1]/div[1]/div[1]/div/div[2]/div/div[1]/div').click()\n",
" time.sleep(0.2)\n",
" endtime = datetime.datetime.now()\n",
" implement = (endtime - starttime).seconds\n",
" print(i, implement)\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "F6processing",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}