如何使用mechanize查找具有特定idtag的链接对象?

2024-04-19 20:54:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个web scraping脚本,该脚本在某个时候应该单击带有特定id标记的锚定链接。我可以通过使用BeautifulSoup找到链接,但是我找不到一个方法来获得机械化链接对象使用mechanize。你知道吗

这是我目前的代码。你知道吗

import mechanize

br = mechanize.Browser()
response = br.open("myUrl")

for link in br.links():
    if str(link.attrs["id"]) == "cell_14_2":
        click_link(link)
    break

我希望找到id为“cell\u 14\u 2”的链接对象,但我在行中收到一条错误消息:

if str(link.attrs["id"]) == "cell_14_2":

信息是:

TypeError: list indices must be integers, not str

我该怎么做才能找到机械化链接对象并单击它?你知道吗


Tags: 对象标记br脚本webidif链接
1条回答
网友
1楼 · 发布于 2024-04-19 20:54:46

链接对象上的属性以(名称、值)对序列的形式保存。因此,您应该先创建字典,然后再按id请求项。例如:

for link in br.links():
    attrs = dict(link.attrs)  # First create a dict
    if str(attrs["id"]) == "cell_14_2":  # Now you can ask for the `id`

相关问题 更多 >