Python3.7嵌套循环无法正确迭代
我有一个使用selenium的小python3脚本,它可以从网站()中刮取到旧报纸的链接,但是,我的嵌套循环无法正常工作 它将遍历所有行以收集发布日期,以命名相应的PDF格式(Python3.7嵌套循环无法正确迭代,python,python-3.x,loops,selenium,download,Python,Python 3.x,Loops,Selenium,Download,我有一个使用selenium的小python3脚本,它可以从网站()中刮取到旧报纸的链接,但是,我的嵌套循环无法正常工作 它将遍历所有行以收集发布日期,以命名相应的PDF格式(Gaceta\u office\u date.PDF),并遍历我列表中的所有链接,而不是遍历所有链接并将其命名为相同的名称。因此,第一个循环不会迭代 但是如何使两个循环一起“工作”,使一个循环得到第一个循环的结果呢 这是脚本的相关部分: import os import datetime new_links = ['ht
Gaceta\u office\u date.PDF
),并遍历我列表中的所有链接,而不是遍历所有链接并将其命名为相同的名称。因此,第一个循环不会迭代
但是如何使两个循环一起“工作”,使一个循环得到第一个循环的结果呢
这是脚本的相关部分:
import os
import datetime
new_links = ['http://digesto.asamblea.gob.ni/consultas/util/pdf.php?type=rdd&rdd=vPjrUnz0wbA%3D',
'http://digesto.asamblea.gob.ni/consultas/util/pdf.php?type=rdd&rdd=dsyx6l1Fbig%3D',
'http://digesto.asamblea.gob.ni/consultas/util/pdf.php?type=rdd&rdd=Cb64W7EHlD8%3D',
'http://digesto.asamblea.gob.ni/consultas/util/pdf.php?type=rdd&rdd=A4TKEG9x4F8%3D'] # only 4 links in list for simplification
table_id = driver.find_element(By.ID, 'tableDocCollection')
rows = table_id.find_elements_by_css_selector("tbody tr") # get all table rows
title = "Gaceta_Oficial_"
extension = ".pdf"
for row in rows:
col = row.find_elements(By.TAG_NAME, "td")[2]
date = col.text
print(date)
date = datetime.datetime.strptime(date, '%d/%m/%Y').strftime('%Y%m%d')
filename = title + str(date) + extension
print(filename)
for new_link in new_links:
print("Downloading %s" % filename)
r = requests.get(new_link)
open(os.path.expanduser("~/Downloads/" + filename, 'wb').write(r.content)
修复了此行的以下问题:
for row, new_link in zip(rows, new_links):
wget
似乎是2019年的一个奇怪的选择,因为在这一年里,有了新的选择。哪种方式更好?你能帮我解决这个问题吗,特里皮我还没有详细检查过wget,所以我不能对更好还是更差做出评论。您可能会发现,找到一个流行且受支持的库的支持要比找到一个奇怪且可能被废弃的旧库容易得多。它也看起来像<代码> WGET 是一个围绕<代码> WGET 实用程序的包装器,而