今日のブログでは、セレンを使用してWebスクレイパーを作成する方法を学習します。Webスクレイピングとは、Webを検索して、必要な情報を見つけたり、Webタスクを自動化したりすることです。基本的な端末の知識が必要になります。コマンド「cd」と「mkdir」のみが必要です。Pipとpython3もインストールする必要があります
python3のWebスクレイピング用のモジュールの1つはセレンです。
まず、virtualenvというモジュールをインストールします。このモジュールは、コンピューターに仮想環境を作成しますが、次のことができるため、インストールする必要はありません。
pip3 install selenium
pip3 install virtualenv
cd desktop
mkdir selenium_basics
cd selenium_basics
virtualenv -p python .
すごい!次に、ターミナルに次のように入力して、仮想環境をアクティブにします。
source Scripts/activate
Scripts/activate
それなら素晴らしい!仮想環境の準備が整い、アクティブ化されます。これで、主要部分に到達できます。タイプ:
pip3 install selenium
これで、仮想環境にセレンが正常にインストールされました。次に、terminal / cmdに次のように入力して、srcという名前のフォルダーを作成します。
mkdir src
mkdir src
次に、ディレクトリをsrcに変更します。お気づきかもしれませんが、selenium_basicsフォルダーがいくつかのファイルでいっぱいになっているため、このsrcフォルダーを生成します。私たちのプログラムがそれと衝突することを望んでいません。
新しいPythonファイルを作成し、好きなように呼び出します。チュートリアルの略で、minetutと呼んでいます。だから 'tut.py'。任意のエディターを使用できますが、私はvimを好みます。
セレンテストを実行するには、ソフトウェアをインストールする必要があります。したがって、chromeでテストを実行するには、chromedriver.exeがあります。Firefoxの場合はgeckodriver.exe、MicrosoftEdgeの場合はエッジドライバーです。chromeを使用しているので、chromedriver.exeをインストールします。
このリンクをクリックすると、chromedriver.exeをインストールできます。Chromeのバージョンに基づいてchromedriver.exeをインストールします。Chromeのバージョンを確認します。単に入力してください:
だから私のクロームバージョンは87です:
そのため、そのリンクを選択して、win32.zipをインストールします。ファイルをsrcフォルダーに抽出します。今日のコードでは、YouTubeを開いて、自動的に検索します。あなたのアカウントはログインしません。また、表示された場合、ログインしようとしてchromedriver.exeを終了すると、アカウントからログアウトされ、すべてのキャッシュが削除されます。これは安全上の理由によるものです。次に、コーディングを行います。
まず、seleniumからwebdriverクラスをインポートします。
from selenium import webdriver
次に、次のようにChromeドライバーの場所を指定します。
driver = webdriver.Chrome('/path/to/chromedriver.exe')
'/chromedriver.exe'は最後に来る必要があります。その後、YouTubeを開く必要があるので、次のように記述します。
drive.get(‘https://www.youtube.com’)
これまでに起こったら、おめでとうございます!あなたは最初の自動化プログラムを書いたばかりです。次に、検索ボックスに何かを入力する必要があります。Windowsのキーボードで、Ctrl + Shift + Iをクリックします。Macユーザーの場合は、command + option + Iです。これはクロムに固有であることに注意してください。
開いた横の窓が見えます。赤で囲んだボタンをクリックしてください。サインインボタンのすぐ横
次に、検索ボックスの上にマウスを置いてクリックします。
これで、HTMLの1つのセクションが青色になることがわかります。そのセクションを右クリックして[コピー]を選択し、XPathをコピーします。
その後、コードに移動して次のように入力します。
driver.find_element_by_xpath('#Paste the xPath here').send_keys('#Whatever you want to search')
アイコンではなく、検索アイコンが表示されているボックスにカーソルを置く必要があることに注意してください。この後、次のように入力します。
driver.find_element_by_xpath('#Put the xpath in here').click()
検索が自動的に完了したことがわかります。今あなたがしなければならないすべてはあなたが望むビデオをクリックすることです。このプログラムをもっと楽しくすることができます!まず、時間モジュールをインポートしてから、ユーザーが何を検索したいかについてユーザーの入力を求めます。chromedriverウィンドウをもう一度クリックするのに十分な時間を確保するために、続行する前に2秒間一時停止するようにプログラムに指示できます。このようなもの:
import time
ask_search = input(str('What do you want to search: '))
time.sleep(2)
driver.find_element_by_xpath('//*[@id="search"]').send_keys("Whatever you want to search")
driver.find_element_by_xpath('//*[@id="search"]').send_keys(ask_search)
そして、chromedriverウィンドウに戻ります。
完了!これで、必要なテキストを検索できるようになり、検索が自動的に行われます。読んでいただきありがとうございます。何か問題があったり、プログラムがうまくいったら、コメントとして書いてください。私はそれらすべてに答えようとします。
コード全体は次のとおりです。
from selenium import webdriver
import time
driver = webdriver.Chrome('/path/to/chromedriver.exe')
ask_search = input(str('What do you want to search: '))
time.sleep(2)
driver.get('https://www.youtube.com')
driver.find_element_by_xpath('//*[@id="search"]').send_keys("Dani")
driver.find_element_by_xpath('//*[@id="search-icon-legacy"]').click()
2023 年に Python エンジニアとして成功するための必須の Python スキルを習得するための包括的なガイド ちょっと、そこ!「Python エンジニアになることについて、この記事を聞く必要があるのはなぜですか?」と疑問に思われるかもしれません。さて、自己紹介をさせてください。私は 21 歳の Python エンジニアで、3 年間の経験があります。
イベントベースのプログラミングは、プログラムのフローが、順番に実行される一連の命令ではなく、発生するイベントによって決定されるプログラミング パラダイムです。イベントベースのプログラミングでは、プログラムは、あらかじめ決められた一連の命令を実行するのではなく、システムまたは環境内のイベントに応答します。
大人になると、世界はそういうもので、あなたの人生はただ世界の中で生きていくだけで、決して命を危険にさらすことはなく、決められた道をたどって最後には死ぬだけで、失敗しないように努めるのだと言われがちです。壁を打ちすぎてはいけません。しかし、それは非常に限られた人生です。
先週、私はPressGazette(英国のメディアニュースウェブサイト)経由で送信されたプレスリリースに気づきました。この記事は、スカンジナビアのポッドキャスト ホスティングおよび広告会社である Acast が、ポッドキャスティングにおいて「おそらく最も影響力のある」パブリッシャーのコンソーシアムを率いることになると発表しました。
私は最近、世界最大のプロフェッショナルなソーシャル ネットワークである Linkedin を利用していて、フォローしているフリーランス デザイナーの注目を集めた投稿を見つけました。彼らはすべて、飛行機からの写真、ラップトップを持ってビーチで撮影した写真、スイミング プールやオフィスから素晴らしい景色を眺めた写真を投稿していました。
はじめに:勇敢な読者の皆さん、地球の最も暗い深みへ私たちを導く旅へようこそ。このブログでは、マリアナ海溝の謎に満ちた世界を掘り下げ、その隠された秘密を明らかにし、その表面の下にある骨も凍るような真実を明らかにします。