前提・実現したいこと
pythonでexcelファイルからデータフレームとして読み込んだwebサイトのURLを再取得して、データフレームの別の列に追記しようと考えています。webサイトのURLを再取得することはできましたが、データフレームに追加するときにうまくいきません。
例えば、
サイトURL 再取得URL
https://aaaaa/aaaaa https://aaaaa/aaaaa
https://bbbb/bbbbb https://bbbb/bbbbb
https://cccc/ccccc https://cccc/ccccc
上記のようにしたいのですが、現状ですと以下のようになります。
サイトURL 再取得URL
https://aaaaa/aaaaa https://cccc/ccccc
https://bbbb/bbbbb https://cccc/ccccc
https://cccc/ccccc https://cccc/ccccc
発生している問題・エラーメッセージ
エラーメッセージはありません。 発生している問題として、URLを再取得することはできたのですが、データフレームの別列に追記する際に、全て同じURLになってしまっています。
該当のソースコード
python
1 2import re 3import requests 4from bs4 import BeautifulSoup 5import pandas as pd 6from urllib.parse import urlparse 7 8df=pd.read_excel('Book1.xlsx',index_col=0) 9#excelのサイトURLが入っているものを1つずつ取り出す 10for c in range(len(df)): 11 retu1=df.iloc[c,0] 12 html_text = requests.get(retu1).text 13 soup = BeautifulSoup(html_text, 'html.parser') 14 parsed_url = urlparse(retu1) 15 base_url = '{0.scheme}://{0.netloc}'.format(parsed_url) 16 print(base_url) 17 df['baseURL']=base_url 18 print(df)
試したこと
print(base_url)でURLを再取得することができていることは確認をしました。
base_urlが文字列のため、リストに変換をしてから追記するのかと考えたのですが、それだと1語1語区切られてしまうため、実現したいこととはかけ離れてしまいます。
補足情報(FW/ツールのバージョンなど)
M1 Mac mini miniforge3使用しています。
ご教授・ご指導いただけましたら幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/09/22 13:08