Python使用Mechanize自动填充

Python使用Mechanize自动填充,python,mechanize,Python,Mechanize,是否有人可以帮助我或共享一些代码来使用mechanize()自动填充登录名?我想制作一个python脚本,以便在运行时将我登录到我最喜欢的站点 谢谢 这将帮助您登录到一个站点并下载一个页面,例如: import mechanize br=mechanize.Browser() br.open('http://www.yourfavoritesite.com') br.select_form(nr=0) #check yoursite forms to match the correct numb

是否有人可以帮助我或共享一些代码来使用mechanize()自动填充登录名?我想制作一个python脚本,以便在运行时将我登录到我最喜欢的站点


谢谢

这将帮助您登录到一个站点并下载一个页面,例如:

import mechanize
br=mechanize.Browser()
br.open('http://www.yourfavoritesite.com')
br.select_form(nr=0) #check yoursite forms to match the correct number
br['Username']='Username' #use the proper input type=text name
br['Password']='Password' #use the proper input type=password name
br.submit()
br.retrieve('https://www.yourfavoritesite.com/pagetoretrieve.html','yourfavoritepage.html')
此脚本假定您的登录表单是页面的第一个,输入名称是
Username
Password

您还可以使用以下选项按名称选择表单:

br.select_form(name="thisthing")
请将此脚本改编为您最喜爱的网站登录页面。

正如AlexMartelli所指出的,这个脚本应该通用化,以处理具有一些配置参数的不同站点。

您最喜欢的每个站点可能都有不同的表单(表单编号、用户名和密码字段的名称),希望您在每个站点上使用不同的用户名和密码(在许多网站上使用相同的用户和密码意味着,如果其中一个网站被破解,你的身份现在“到处”都会被泄露——真是一团糟!)

因此,您可以硬编码所有这些参数,如@systempuntoout的答案中所示,或者为每个站点编写一个包含所有这些信息的小配置文本文件(例如,以支持的格式),以便在脚本启动时加载配置,并编写“登录”函数,只需一次,它将sitename作为参数,查找并使用依赖它的参数


如果你有很多“最喜欢的站点”,那么加载所有的信息会明显地减慢你的启动时间,那么你甚至可能想考虑更聪明地保存这些信息(例如在 SQLite 表)中,这样就可以快速查找一个或几个网站,把它们的名字命名为“KEY”。使用。

你看过文档了吗?嗯,你说的表单编号是什么意思?你的意思是像html中的表单名称一样?检索做什么?
还有一件事我怎么知道登录成功了?@shorty你应该可以下载私人页面:)