使用下载 url +“href”创建元组列表

梅拉尼娅 CB

我正在尝试创建一个元组列表,第一个元素是下载 URL,第二个元素是 URL 字符串中的文件名,代码如下:

import urllib
import requests
from bs4 import BeautifulSoup
import pandas as pd
import io
url = r"https://www.ers.usda.gov/data-products/livestock-meat-domestic-data"
my_bytes = urllib.request.urlopen(url)
my_bytes = my_bytes.read().decode("utf8")
parsed_html = BeautifulSoup(my_bytes, features = "lxml")
table_data = parsed_html.body.find('table', attrs = {'id':'data_table'})
download_url = "https://www.ers.usda.gov"
full_download_url = [tuple(download_url,i["href"]) for i in table_data.find_all('a')]

但我一直在TypeError: must be str, not list相处,我不知道如何解决这个问题,请帮忙?谢谢!

CoderWithADream

您错误地访问了download_url数组索引。

[0]例如,Python 将您的代码解释为在为 0时创建一个包含一个元素的数组i,然后尝试访问该元素["href"]是字符串,而不是有效索引

如果您download_url在访问索引之前指定它将按预期工作

full_download_url = [(download_url, download_url[i]["href"]) for i in table_data.find_all('a')]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章