月曜日, 3月 22, 2021

seleniumで簡単にreferer偽装[python](403エラーやアクセス禁止された時に)

seleniumでアクセスしようとした時にどこからアクセスしたかで判別されて弾かれることがあります。

そんな時にrefererを偽装する方法を記しておきます。

意外と簡単な話でseleniumはjavascriptのコードを実行することができるため、javascriptを駆使します。
その前にまずはrefererとして設定したいサイトにアクセスします。

chrome_options = Options()
driver = webdriver.Chrome("/*chromeドライバーのパス*/", chrome_options=chrome_options)
driver.get("/*refererとして設定したいサイトのurl*/")

そしてseleniumにはjavascriptを実行するapiが存在します。

driver.execute_script(/*ここにjavascriptのコードを書く*/)

がjavascriptを実行するapiです。
ここのjavascriptに要素を書き換える命令を使って

なにかしらの要素をaタグに書き換えます。

そうです。自分が指定したurlにアクセスし、htmlの要素を書き換えてリンクを作成し、クリックしてそのサイトにアクセスすればrefererは自分で決めることができます。
そして下記のコードをサイトに合わせて書き換えて実行します。

var refererselector=document.getElementById("/*なにかしらのhtmlの要素のid*/");
refererselector.innerHTML="<a id='refererurllink' href=''+str(imgurl)+''>吹っ飛べ!</a>"

そしてseleniumのapiでクリックします。

element=driver.find_element_by_id("refererselector")
element.click()

これらを一つのpythonのプログラムにまとめると下記のようになります。

driver.execute_script('var refererselector=document.getElementById("/*なにかしらのhtmlの要素のid*/");refererselector.innerHTML="<a id='refererurllink' href=''+str(imgurl)+''>吹っ飛べ!</a>"')
element=driver.find_element_by_id("refererurllink")
element.click()

いかがだったでしょうか?
これで403エラーも怖くないですね☆

  1. Forexbeaucky

    月曜日, 1月 24, 2022 at 02:58:12

    Simple forex trading strategies for beginners. https://system-forex.com

  2. Forexbeaucky

    水曜日, 3月 30, 2022 at 14:46:49

    Le forex. https://fr.forex-stock-bitcoin-brokers.com

  3. Forexbeaucky

    日曜日, 4月 17, 2022 at 06:04:28

    Πώς να κερδίσετε χρήματα με ανταλλαγή συναλλάγματος. https://gr.forex-stock-bitcoin-brokers.com

  4. ronaldBrasp

    土曜日, 3月 23, 2024 at 03:43:06

    Все детские спортивные комплексы сертифицированы, производятся в УКРАИНЕ.Проект Благоустройство площадки детского сада .
    https://www.alfoot.net/arhiv/season-2015.html
    http://yourfootball.org/2013-09-04-futbolnyj-kalejdoskop-31/
    http://wpproj.ru/category/fitnes

    Стойка для гантелей вертикальная на 6шт.Наши детские площадки, спортивные площадки установлены во многих городах Украины Киев, Харьков, Полтава, Кременчуг, Комсомольск, Днепропетровск, Донецк, Ровно, Запорожье, Луцк, Винница, Черновцы,.

コメント記入

次のフォームにコメントを記入してください。


管理者用

Menu

色々あってメモ帳がわりのブログ的なものを作ることになりましたが、wordpressアレルギーなるものが発病したので代わりにflatpressという物を使って作ってみました。

プログラム関連のことを書いていこうと思っています。

ちなみに作った物やwebサイトはここに置いています。

flatpressの初期のテーマがどうしても気に入らなくて色々探しているうちに何が何だかわからなくなって、

ブログにふさわしいテーマってなんだ?

と自問自答しているうちに結局デフォルトのものに近い物を使ってしまった。
なんかいいテーマないですかね?