我有一列以国家/地区名称作为名称的熊猫。
我需要该国家/地区标志的PNG网址作为单独的列。美国的网址如下所示
https://upload.wikimedia.org/wikipedia/en/thumb/a/a4/Flag_of_the_United_States.svg/1280px-Flag_of_the_United_States.svg.png
我怎么能做到这一点。
这是我的国家/地区数据框。
0 Afghanistan
1 Albania
2 Algeria
3 Andorra
4 Angola
5 Antigua and Barbuda
6 Argentina
7 Armenia
8 Australia
9 Austria
10 Austria-Hungary
11 Azerbaijan
12 Bahamas
13 Bahrain
14 Bangladesh
15 Barbados
16 Belarus
17 Belgium
18 Belize
19 Benin
20 Bhutan
.......
.......
Name: Entity, dtype: object
答案 0 :(得分:2)
因此,在Wikipedia中查找标志链接,看起来它们的网址似乎没有统一的格式,因此您将无法仅遍历“国家/地区”列表来创建列。
您最好的选择是简单地刮一下Wikipedia并将您的国家/地区列表复制到基本File:Flag页面中。像这样:
import requests
from bs4 import BeautifulSoup
for item in df['Country']:
url = 'https://en.wikipedia.org/wiki/File:Flag_of_'+str(item)+'.svg'
r = requests.get(url)
soup = BeautifulSoup(r.text, 'lxml')
df['Flag_Link'] = soup.find('span', {'class':'mw-filepage-other-resolutions'}).findAll('a')[3]['href']
我假设您想要1280X853链接,该链接为[3]跨度。如果您有任何问题,请告诉我。