使用Firefox/Python/Selenium——我可以在网页上的一个文件链接上使用click()
来下载它,并按预期将文件下载到我的下载文件夹中。在
但是,当我在多个链接上向click()
添加更多行时,脚本不再按预期运行。它们不是在下载的文件,而是在单独的浏览器窗口中打开,这些窗口在脚本完成后都会关闭。在
这是设计的,还是有一种方法可以绕过它,或者在一个网页上下载多个文件?在
这是有问题的网站:https://www.treasury.gov/about/organizational-structure/ig/Pages/igdeskbook.aspx
我正在尝试下载导言和第1-4卷所有部分的链接。在
我有一本定位器的字典:
IgDeskbookPageMap = dict(IgDeskbookBannerXpath = "//div[contains(text(), 'The Inspector General Deskbook')]",
IgDeskbookIntroId = "anch_202",
IgDeskbookVol1Part1Id = "anch_203",
IgDeskbookVol1Part2Id = "anch_204",
IgDeskbookVol1Part3Id = "anch_205",
IgDeskbookVol1Part4Id = "anch_206",
IgDeskbookVol2Id = "anch_207",
IgDeskbookVol3Id = "anch_208",
IgDeskbookVol4Part1Id = "anch_209",
IgDeskbookVol4Part2Id = "anch_210",
IgDeskbookVol4Part3Id = "anch_211"
方法如下:
^{pr2}$这些是click()调用(有3个以上的调用,但只是为了节省空间而截断:
self.click(10,
"id",
IgDeskbookPageMap['IgDeskbookIntroId']
)
self.click(10,
"id",
IgDeskbookPageMap['IgDeskbookVol1Part1Id']
)
self.click(10,
"id",
IgDeskbookPageMap['IgDeskbookVol1Part2Id']
)
如果在不同的选项卡中打开来下载这样多个文件,可以使用您自己的编码语言执行以下算法步骤:
我为启动Firefox添加了以下代码,现在在单击每个文件时,下载行为如预期一样正常工作:
相关问题 更多 >
编程相关推荐