Ver Fonte

更换了chaojiying为ttshitu,完成了cookie登录和自动的验证码截图与提交、获取坐标,接下来做验证码的点选

Shellmiao há 4 anos atrás
pai
commit
decbfbf41e

+ 8 - 0
.idea/.gitignore

@@ -0,0 +1,8 @@
+# 默认忽略的文件
+/shelf/
+/workspace.xml
+# 数据源本地存储已忽略文件
+/../../../../../../../:\同步文件\课程文件\文档\mcbbs搞事\AutoTool\.idea/dataSources/
+/dataSources.local.xml
+# 基于编辑器的 HTTP 客户端请求
+/httpRequests/

+ 8 - 0
.idea/AutoTool.iml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module type="PYTHON_MODULE" version="4">
+  <component name="NewModuleRootManager">
+    <content url="file://$MODULE_DIR$" />
+    <orderEntry type="jdk" jdkName="Python 3.8 (venv) (2)" jdkType="Python SDK" />
+    <orderEntry type="sourceFolder" forTests="false" />
+  </component>
+</module>

+ 17 - 0
.idea/inspectionProfiles/Project_Default.xml

@@ -0,0 +1,17 @@
+<component name="InspectionProjectProfileManager">
+  <profile version="1.0">
+    <option name="myName" value="Project Default" />
+    <inspection_tool class="PyCompatibilityInspection" enabled="true" level="WARNING" enabled_by_default="true">
+      <option name="ourVersions">
+        <value>
+          <list size="4">
+            <item index="0" class="java.lang.String" itemvalue="2.7" />
+            <item index="1" class="java.lang.String" itemvalue="3.7" />
+            <item index="2" class="java.lang.String" itemvalue="3.8" />
+            <item index="3" class="java.lang.String" itemvalue="3.9" />
+          </list>
+        </value>
+      </option>
+    </inspection_tool>
+  </profile>
+</component>

+ 6 - 0
.idea/inspectionProfiles/profiles_settings.xml

@@ -0,0 +1,6 @@
+<component name="InspectionProjectProfileManager">
+  <settings>
+    <option name="USE_PROJECT_PROFILE" value="false" />
+    <version value="1.0" />
+  </settings>
+</component>

+ 7 - 0
.idea/misc.xml

@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.8 (venv) (2)" project-jdk-type="Python SDK" />
+  <component name="PythonCompatibilityInspectionAdvertiser">
+    <option name="version" value="3" />
+  </component>
+</project>

+ 8 - 0
.idea/modules.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/.idea/AutoTool.iml" filepath="$PROJECT_DIR$/.idea/AutoTool.iml" />
+    </modules>
+  </component>
+</project>

+ 6 - 0
.idea/vcs.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
+  </component>
+</project>

+ 44 - 0
VerificationCode/mcbbs/SignIn.py

@@ -0,0 +1,44 @@
+from ..GetImage import get_vc_image
+from ..ttshitu import base64_api
+from selenium.webdriver.common.action_chains import ActionChains
+from io import BytesIO
+import time
+
+
+def sign_in_vc(driver):
+    url = 'https://www.mcbbs.net/plugin.php?id=dc_signin'
+
+    driver.get(url)
+    get_to_sign_in(driver)
+    image = get_image(driver)
+    image = image.convert('RGB')
+    image.save('D:\同步文件\课程文件\文档\mcbbs搞事\AutoTool\VerificationCode\d.jpg')
+    img_path = 'D:\同步文件\课程文件\文档\mcbbs搞事\AutoTool\VerificationCode\d.jpg'
+    result = base64_api(uname='Shellmiao', pwd='sBif.9MMF8Pa', img=img_path)
+    print(result)
+
+
+def get_to_sign_in(driver):
+    sign_in_button(driver)
+    sign_in(driver)
+
+
+def sign_in_button(driver):
+    button = driver.find_element_by_link_text('签到')
+    ActionChains(driver).move_to_element(button).click().perform()
+
+
+def sign_in(driver):
+    time.sleep(2)
+    button = driver.find_element_by_id('emot_1')
+    ActionChains(driver).move_to_element(button).click().perform()
+    time.sleep(2)
+    submit = driver.find_element_by_name('signpn')
+    ActionChains(driver).move_to_element(submit).click().perform()
+
+
+def get_image(driver):
+    time.sleep(2)
+    element = driver.find_element_by_class_name('geetest_widget')
+    vc_image = get_vc_image(element)
+    return vc_image

+ 0 - 0
login/login.py


+ 8 - 0
test.py

@@ -0,0 +1,8 @@
+from VerificationCode.mcbbs.SignIn import sign_in_vc
+from selenium import webdriver
+from loginTools.login import login
+
+driver = webdriver.Firefox()
+cookie_path = 'cookies3.txt'
+login(driver, cookie_path)
+sign_in_vc(driver)