[英]Python Login to Webpage Issue
我正在使用Spyder在Python 3.6中編碼我的項目。
由於我不熟悉網絡抓取和html,因此我下載了robobrowser來幫助我登錄到網頁。
我了解該過程,但是在訪問表單元素時遇到問題。
from robobrowser import RoboBrowser
browser = RoboBrowser(history=True)
url1 = "example_url"
username = "example_user"
password = "example_pass"
browser.open(url1)
form = browser.get_forms()
form['username'] = username
似乎只有一種形式,當我嘗試將其轉換為字符串的示例時,似乎正在尋找該形式。 由於某種原因,除非我轉換為字符串,否則它不會在spyder工作區中顯示為變量。
我查看了html,用戶名條目的名稱和ID的確是'username'。 我得到錯誤
form['username'] = username
TypeError: list indices must be integers or slices, not str
它不喜歡我嘗試按“用戶名”形式訪問索引,但是這是我所看到的該模塊所有示例中的語法。 (對此鏈接的第一個答案是我正在使用的模板https://www.quora.com/What-is-the-best-way-to-log-in-to-a-website-using-Python )
您可以嘗試直接在網址中使用登錄名和密碼。 這是方案:
http://USERNAME:PASSWORD@example.com/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.