前提
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.14.6
BuildVersion: 18G95
python 3.7
selenium 3.141
###実現したいこと
pythonをseleniumでスクレイピングした情報をgoogleスプレッドシートに記録したい
(APIは使わずseleniumによるブラウザ操作ベースで実現したい)
発生している問題
python + selenium環境で文字列をスクレイピングし、GoogleSpreadSheetに貼り付ける際、
漢字_を含む文字列が入力出来ません。
挙動としては
春夏秋冬_aaaを貼り付けた際2つ下のセルにaaaと表示されてしまいます。
_とひらがなの組わせは正常、_と半角英数字の組み合わせも正常です。
漢字だけがこの様な挙動になってしまいます。
該当のソースコード
(スクレイピング部分は割愛) def main(): gdrive.get('https://docs.google.com/spreadsheets/d/hogehoge') cell_input = gdrive.find_element_by_class_name("cell-input") for to_spread in items_field : for cell in to_spread: #A1からA列の空のセルまでたどる while cell_input.text != '': cell_input.send_keys(Keys.ENTER)#たどる&入力待ちまで time.sleep(0.1) cell = cell.replace('_', 'ー') cell = cell.replace('\r','') cell = cell.replace('\n','') cell_input.send_keys() #漢字 + _で改行扱いになる謎挙動 cell_input.send_keys(Keys.TAB) time.sleep(0.1) cell_input.send_keys(Keys.ENTER) time.sleep(0.1) #(actionChains ActionChainsで左端まで戻す処理など,,,割愛)
試したこと
入力ごろにprint(type(cell)) 全てstrでした。
を全角_や全角ハイフンに置換しましたが改善しませんでした。
コンソールに一旦出力した後、手動でコピペ -> 漢字〜でも問題なし
google spread sheet APIを使用することはアクセス上限があるため厳しいです。
gdrive.find_element_by_class_name("cell-input")
で指定している数式バーに噛んでるjsやjqueryの問題なのか、頭が混乱して
これ以上の問題の切り分けがわからず詰んでいます。。。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。