Python Selenium

【Python】Seleniumで位置情報を設定する方法

この記事は約3分で読めます。

 

前準備

 

# ライブラリをインストールする 
$ pip install selenium
$ pip install webdriver-manager

 

前提記事

SeleniumのChromeDriverの更新・バージョン管理を自動化する方法

 

Seleniumで位置情報を設定するサンプルコード

 

公式ドキュメントを漁った感じだとseleniumではexecute_cdp_cmd()というメソッドで検証ツール経由で位置情報を設定できるみたいです。以下が東京からアクセスする場合のサンプルコードになります

 

from selenium import webdriver 
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 

url = 'https://tkstock.site/' 
d = DesiredCapabilities.CHROME d['goog:loggingPrefs'] = { 'performance': 'ALL' } 
driver = webdriver.Chrome(ChromeDriverManager().install(),desired_capabilities=d) 
driver.set_window_size('1200','1000') 
driver.get(url)

# 位置情報の設定を許可(許可をしないと位置情報の設定ができない)
driver.execute_cdp_cmd(
    "Browser.grantPermissions",
    {
        "origin": "https://hromssp.obc.jp/",
        "permissions": ["geolocation"]
    },
)

# 緯度、経度、緯度・経度の誤差(単位:m)を設定する
driver.execute_cdp_cmd(
    "Emulation.setGeolocationOverride",
    {
        "latitude": 35.689764,
        "longitude": 139.692089,
        "accuracy": 100,
    },
)

 

おまけ

 

自分がよく使用しているのは以下の組み合わせです

 

data = [
    ["東京都","北海道","沖縄県","大阪府","京都府","山口県","熊本県","群馬県","青森県","三重県"],
    [35.689764,43.167149,26.212381,34.686451,35.021185,34.186052,32.789970,36.390771,40.837501,34.730488],
    [139.692089,141.325952,127.680859,135.519678,135.755233,131.470757,130.741477,139.060346,140.738267,136.508869]
]

 

関連記事:SeleniumでGoogleアカウントにログインした状態で起動する方法

関連記事:【Python】Seleniumでファイルをアップロードするサンプルコード

関連記事:GoogleMapのAPIで地図上施設の詳細情報を取得する

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました