У меня есть 2 кадра данных: df_mentions
, где у меня есть URL-адреса, и media
, где у меня есть информация о некоторых журналах.Мне нужно постоянно обновлять df_mentions
информацией, содержащейся в СМИ.
Mentions=['https://www.lemonde.fr/football/article/2019/07/08/coupe-du-monde-feminine-2109-au-sein-de-chaque-equipe-j-ai-vu-de-grandes-joueuses_5486741_1616938.html','https://www.telegraph.co.uk/world-cup/2019/06/12/womens-world-cup-2019-groups-complete-guide-teams-players-rankings/','https://www.washingtonpost.com/sports/dcunited/us-womens-world-cup-champs-arrive-home-ahead-of-parade/2019/07/08/48df1a84-a1e3-11e9-a767-d7ab84aef3e9_story.html?utm_term=.8f474bba8a1a']
Date=['08/07/2019','08/07/2019','08/07/2019']
Publication=['','','']
Country=['','','']
Foundation=['','','']
Is_in_media=['','','']
df_mentions=pd.DataFrame()
df_mentions['Mentions']=Mentions
df_mentions['Date']=Date
df_mentions['Source']=Source
df_mentions['Country']=Country
df_mentions['Foundation']=Foundation
df_mentions['Is_in_media']=Is_in_media
Source=['New York times','Lemonde','Washington Post']
Link=['https://www.nytimes.com/','https://www.lemonde.fr/','https://www.washingtonpost.com/']
Country=['USA','France','USA']
Foundation=['1851','1944','1877']
media=pd.DataFrame()
media['Source']=Source
media['Link']=Link
media['Country']=Country
media['Foundation']=Foundation
media
И они выглядят так (но с почти 1000 строк ежедневно) ![df_mentions](https://i.stack.imgur.com/mH4tF.png)
media
![media](https://i.stack.imgur.com/x3Kmu.png)
и мне нужно проверить, содержится ли источник ссылки на носителе, извлечь из него данные для заполнения df_mentions и получитьследующий результат:
Ожидаемый: ![enter image description here](https://i.stack.imgur.com/m56VM.png)
И то, что я сделал, это:
for index in range(0,len(media)):
for index2 in range(0,len(df_mentions)):
if str(media['Link'][index])in str(df_mentions['Mentions'][index2]):
df_mentions['Publication'][index2]=media['Publication'][index]
df_mentions['Country'][index2]=media['Country'][index]
df_mentions['Foundation'][index2]=media['Foundation'][index]
df_mentions['Is_in_media'][index2]='Yes'
else:
df_mentions['Is_in_media'][index2]='No'
df_mentions
Но это работает на моем ноутбуке один раз, и если я закрываю ноутбук выдает ошибки, я использую Pandas 0.24.0.Есть ли лучший способ сделать это и разрешить работать все время?
Заранее спасибо!Будем благодарны за любую помощь!