如何使用python登录网站?
我看到了另一个问题: 然而,对这个答案的直接修改对我来说不起作用,所以我想知道如何才能实现我的目标 为了提供上下文,我正在尝试登录如何使用python登录网站?,python,authentication,Python,Authentication,我看到了另一个问题: 然而,对这个答案的直接修改对我来说不起作用,所以我想知道如何才能实现我的目标 为了提供上下文,我正在尝试登录https://mog.com/hp/sign_in然后从以下页面提取我的播放列表的名称:http://mog.com/my_mog/playlists 我认为,对于那些知道自己在做什么的人来说,这应该是非常简单的。一些基本的代码可以登录到网站并访问受密码保护的页面,如果你能用一两句话解释代码中的每一行都在做什么,那就更好了,这样我就可以更好地理解代码在做什么。试试:
https://mog.com/hp/sign_in
然后从以下页面提取我的播放列表的名称:http://mog.com/my_mog/playlists
我认为,对于那些知道自己在做什么的人来说,这应该是非常简单的。一些基本的代码可以登录到网站并访问受密码保护的页面,如果你能用一两句话解释代码中的每一行都在做什么,那就更好了,这样我就可以更好地理解代码在做什么。试试:
编辑:要获取链接,您可以添加以下内容:
for link in br.links():
print link.url, link.text
或者,从playlist.html开始,您可以使用和regex:
from BeautifulSoup import BeautifulSoup
import re
soup = BeautifulSoup(file('playlist.html').read())
for link in soup.findAll('a', attrs={'href': re.compile("your matching re")}):
print link.get('href')
你改变了什么?你怎么知道它不适合你?我更改了网站和登录信息。我知道它不起作用,因为我打印了页面上的链接,但它不是相同的链接。它从注册页面打印出链接。也许我没有正确修改这一行:
login\u data=urllib.urlencode({'username':username,'j_password':password})
,但我不知道如何计算要进行的替换。“我不知道如何计算要进行的替换”你是说你不知道登录表单上的字段名是什么?您是否查看了带有登录表单的页面,以查看
标记包含哪些字段?是的,我尝试了“user[login]”和“user[password]”,但这些都不起作用。我让它起作用,并将html拉到一个文件中,正如所写的那样。如果我想从mog.com/my_mog/playlists中检索与模式匹配的链接,该命令是什么?我很难为mechanize找到清晰、易于搜索的文档。@jonderry我认为没有命令,您可能需要使用regexp来匹配模式
from BeautifulSoup import BeautifulSoup
import re
soup = BeautifulSoup(file('playlist.html').read())
for link in soup.findAll('a', attrs={'href': re.compile("your matching re")}):
print link.get('href')