前提・実現したいこと
pythonの練習中の者です。
sereniumでスクレイピングしてpandasでDFを取得しています
データ取得した後のDFで文字列の整数だけを取り出したいです。
取得したデータは、整数(○.○%)という形になっています
合計イベント数、ユニークイベント数の両列に
文字列の整数だけを取り出したいのですが、うまくいきません。
どうすればいいかご教示いただけないでしょうか。
よろしくお願いします。
以下DFのデータです
||ページ|合計イベント数|ユニークイベント数|
|:--|:--:|--:|
|0|ページURL|71(20.34%)|66(20.37%)|
|1|ページURL|54(16.51%)|56(17.28%)|
|2|ページURL|54(16.51%)|48(14.81%)|
|3|ページURL|49(14.98%)|44(13.58%)|
|:|:|:|
|10|ページURL|1(0.29%)|1(0.31%)|
発生している問題・エラーメッセージ
エラーはありません
該当のソースコード
#動画再生回数取得 youtubeplay = f'https://analytics.google.com/analytics/web/?authuser=2#/report/content-event-events/a121327688w179215103p177584401/_u.date00={yesterday}&_u.date01={yesterday}&explorer-table.plotKeys=%5B%5D&explorer-table.rowStart=0&explorer-table.rowCount=50&_r.drilldown=analytics.eventCategory:%E3%80%90%E8%A8%88%E6%B8%AC%E3%80%91youtube&explorer-segmentExplorer.segmentId=analytics.eventLabel/' browser.get(youtubeplay) sleep(20) youtube_iframe = browser.find_element_by_id('galaxyIframe') browser.switch_to.frame(youtube_iframe) print("フレームに切り替えました") sleep(15) #テーブル取得 elem_table = browser.find_element_by_id("ID-rowTable") html = elem_table.get_attribute('outerHTML') dfs = pd.read_html(html) moviecount = dfs[0] moviecount.set_axis([ 'Unnamed: 1_level_1', '数','ページ', '合計イベント数','ユニークイベント数', 'イベントの値', '平均値'], axis='columns', inplace=True) count_movie = moviecount.drop(['Unnamed: 1_level_1'], axis='columns') count_movie1 = count_movie.drop(['数'], axis='columns') count_movies = count_movie1.assign(取得日時 = yesterday2)
試したこと
[合計イベント数]を抽出したい場合、strでスライスを行うと
count_movies['合計イベント数'].str[:-7]
と末尾から削っても整数の値が変動する為にうまくいきません
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/26 05:25