0
我開發了一個Python的網頁抓取工具,它只從mysql數據庫中獲取用戶名和密碼,然後轉到網頁並填寫表單進行登錄,直到這裏一切正常,問題是當我的數據庫中有超過1個用戶時,它登錄並完全完成腳本,但是當它傳遞給第二個用戶時,它停在代碼的中間並顯示下一條消息:Python Selenium消息:無法找到元素
消息:無法找到元素:{ 「方法」: 「名字」, 「選擇」: 「提交」}
這裏是我的代碼:
#!/usr/bin/python
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import MySQLdb
db = MySQLdb.connect(host="127.0.0.1", user="root", passwd="", db="seliso")
cursor = db.cursor()
cursor.execute("SELECT * FROM usuarios")
for row in cursor.fetchall():
rfc = row[1]
clave = row[2]
driver = webdriver.Firefox()
driver.get("https://login.siat.sat.gob.mx/nidp/idff/sso?id=mat-ptsc-totp&sid=10&option=credential&sid=10")
username = driver.find_element_by_name("Ecom_User_ID")
password = driver.find_element_by_name("Ecom_Password")
username.send_keys(rfc)
password.send_keys(clave)
submit = driver.find_element_by_name("submit")
submit.click()
driver.get("https://www.siat.sat.gob.mx/PTSC/")
link = driver.find_element_by_link_text("Buzón tributario")
link.click()
driver.get("https://www.siat.sat.gob.mx/PTSC/cerrarSesion")
driver.close()
db.close()
實際上,自第二次迭代以來 - 聽起來好像你沒有登錄到登錄表單的同一頁面。這可能是會議沒有結束。你有沒有嘗試手動重複這個過程? – bbrincat
它的名字是「submit」http://imageshack.com/a/img924/2185/zA4an3.png –