Python クローラーはデータを収集するのは簡単ですか? Python プログラミングを上手に学ぶにはどうすればよいですか?

序文

Python クローラーは非常に強力ですが、クローラーでブラウザを自動的に制御するにはどうすればよいでしょうか? 広大な検索エンジンでは、毎日何百億ものクローラーがインターネットを行き来していることがわかっていますが、このような強力なインターネットのクローラーはどのようにしてブラウザを認識し、データを取得するのでしょうか?

概要:

Python が Selenium を介してデータをクロールすることは、封鎖を突破する効果的な方法です。ただし、Selenium を使用すると多くの問題が発生するため、この記事では、Selenium を使用して JavaScript プログラムを実行し、動的に実行される Web ページを取得する方法を一問一答形式で普及します。気に入っていただけましたら、この記事を転送していただければ幸いです。

[----Python 爬虫類の学習に役立ちます。記事の最後にある以下の学習教材はすべて無料です。----】

Python クローラーがデータを収集するのは簡単ですか? Python プログラミングを上手に学ぶにはどうすればよいですか?_www.cnitedu.cn

Python クローラーはデータを収集するのは簡単ですか? Python プログラミングを上手に学ぶにはどうすればよいですか?

Python クローラー プログラミング: Selenium で JavaScript を実行するとエラーが発生します。何を変更すればよいですか?

質問:

Xiao Ming は、まるでインターネット全体のデータがポケットに収まるかのように、Python クローラー プログラミングを学び始めました。今日も難しいアクションを実行しようとしました。selenium に次の HTML を取得させ、js スクリプトを自動的に実行させ、マウスを模倣してクリック アクションを自動的に実行させたいと考えていました。しかし、彼は残念なことに、予想外に、予想外に、役に立たなかったのです!

Nyaralego さん、Sikonge さん、Ab-Titchaz さん、他11人が「いいね!」と言っています

これが彼が実行するコードです。

browser.execute_script(“document.getElement(By.xpath(”//div[@class='vbseo_liked']/a[contains(@onclick, 'return vbseoui.others_click(this)')]”).click() ”)

動作しませんでした、反応しませんでした。私が何を間違えたのでしょうか?

Python の大きな答えは次のとおりです。

回答のポイント:

Selenium を使用して要素を検索し、クリック時にそれをexecute_script() に渡します。

link = browser.find_element_by_xpath('//div[@class=“vbseo_liked”]/a[contains(@onclick, “return vbseoui.others_click(this)”)]') browser.execute_script('arguments[0].click ();'、 リンク)

ゼロから取り組む場合に知っておくべきことのリストは次のとおりです。

  • JavaScript を使用してクリックをシミュレートするにはどうすればよいですか?

これが私がすることです。シンプルですが、うまくいきます:

関数eventFire(el, etype){ if (el.fireEvent) { el.fireEvent('on' + etype); } else { var evObj = document.createEvent('イベント'); evObj.initEvent(etype, true , false ); el.dispatchEvent(evObj); } }

使用法:

eventFire(document.getElementById('mytest1'), 'click');

  • Python でクリックをシミュレートするにはどうすればよいですか? まず、カスタムの予想される条件を作成し、要素が「実行」されるのを待ちます。

class wait_for_text_not_to_end_with(object): def init (self, locator, text): self.locator = locator self.text = text def call (self, driver): try : element_text = EC._find_element(driver, self.locator).text .strip() はStaleElementReferenceExceptionを除いてelement_text.endswith(self.text)を返しません: Falseを返します

定義が完了したら、プログラム内でこのクラスを呼び出す方法は次のとおりです。次のコードを見てください。

seleniumからwebdriver をインポートします。selenium.common.ExceptionsからStaleElementReferenceException をselenium.webdriver.commonからインポートします。by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import Expected_conditions as EC class wait_for_text_not_to_end_with(object): def init (self, locator, text): self.locator = locator self.text = text def call (self, driver): try : element_text = EC._find_element(driver, self.locator).text.strip() は、StaleElementReferenceExceptionを除いてelement_text.endswith(self.text)を返しません。return Falseブラウザ = webdriver.PhantomJS() ブラウザ.maximize_window() ブラウザ.get(“http://www.cnitedu.cn/it/new/20198728.html”) ユーザ名 = ブラウザ.find_element_by_id(“navbar_username”)パスワード= browser.find_element_by_name(“vb_login_password_hint”) username.send_keys(“MarioP”)パスワード.send_keys(“codeswitching”) browser.find_element_by_class_name(“loginbutton”).click() wait = WebDriverWait(browser, 30) wait.until(EC. Visibility_of_element_located(( By .XPATH, '//h2[contains(., “Redirecting”)]'))) wait.until(EC.title_contains('ケニアとタンザニア')) wait.until(EC.visibility_of_element_located(( By.ID, 'postlist'))) # 「その他 11 件」リンクをクリック link = browser.find_element_by_xpath('//div[@class=“vbseo_liked”]/a[contains(@onclick, “return vbseoui.others_click(this) ”)]') link.click() browser.execute_script(””" function eventFire(el, etype){ if (el.fireEvent) { el.fireEvent('on' + etype); } else { var evObj = document .createEvent('イベント'); evObj.initEvent(etype, true , false ); el.dispatchEvent(evObj); } }eventFire(arguments[0], “click”); “”", link ) #「div」が「11 人の他の人がこれをリンクしています」終わらないようにしてください。 wait.until(wait_for_text_not_to_end_with(( By .CLASS_NAME, 'vbseo_liked'), “他 11 人がいいね!”)) print 'success!!' ブラウザ。 閉じる()

Python で Selenium を介してデータをクロールする方法は非常に簡単です。重要なポイントをマスターしたら、独自のクローラーのコンパイルを開始します。

クローラーを使用してデータを収集するのはとても簡単です。Python プログラミングに興味があるなら、よく学習してください。クローラーを使用してデータを収集することは難しくありません。学習を始めていますか?

最後に、これからPythonとデータ分析を学びたい人に向けて、マインドマップや定番書籍、サポートビデオなど、入門から上級までの完全なPython学習ルートを紹介します!

PythonやSQLなどのツールの使い方は、データ分析プロセスで使用する必要があるコツです。そして必要なハードスキル!

1. Python の概要

以下の内容は、Python の応用全般に必要な基礎知識であり、クローラ、データ分析、人工知能などをやりたい場合は、まず学習する必要があります。高いものはすべて原始的な基礎の上に建てられます。しっかりした基礎があれば、前に進む道はより安定します。

含む:

コンピューターの基本

ここに画像の説明を挿入

Pythonの基本

ここに画像の説明を挿入

Python入門ビデオ600話:

ゼロベース学習ビデオを見るのが最も早くて効果的な学習方法で、ビデオ内の教師のアイデアに従って、基礎から詳細まで非常に簡単に始めることができます。

2. Python クローラー

人気の方向性として、爬虫類はアルバイトでも仕事効率を上げるための補助スキルとしても最適です。

クローラーテクノロジーを通じて関連コンテンツを収集し、分析、削除することで、本当に必要な情報を取得できます。

この情報収集・分析・統合作業は、生活サービス、旅行、金融投資、各種製造業の製品市場需要など、幅広い分野で応用可能であり、クローラ技術を活用することで、より正確かつ正確な情報を取得することができます。有効な情報を活用してください。

ここに画像の説明を挿入

Python クローラーのビデオ素材

ここに画像の説明を挿入

3. データ分析

清華大学経済管理学院が発表した報告書「中国経済のデジタル変革:人材と雇用」によると、データ分析人材の格差は2025年に230万人に達すると予想されている。

人材の格差がこれほど大きいと、データ分析は広大なブルーオーシャンのようなものになります。初任給10万は本当に当たり前です。

ここに画像の説明を挿入

4. データベースとETLデータウェアハウス

企業は、ビジネス データベースからコールド データを定期的に転送し、履歴データの保存専用のウェアハウスに保存する必要があります。各部門は、独自のビジネス特性に基づいて統合されたデータ サービスを提供できます。このウェアハウスはデータ ウェアハウスです。

従来のデータ ウェアハウス統合処理アーキテクチャは ETL であり、ETL プラットフォームの機能を使用します。E = ソース データベースからデータを抽出、L = データ (ルールに準拠していないデータ) のクリーンアップ、変換 (異なる次元と異なる粒度)ビジネス ニーズに応じたテーブルの計算)、さまざまなビジネス ルールの計算)、T = 処理されたテーブルをデータ ウェアハウスに段階的に、完全に、異なる時点でロードします。

ここに画像の説明を挿入

5. 機械学習

機械学習とは、コンピュータのデータの一部を学習し、他のデータを予測・判断することです。

機械学習の核心は、「アルゴリズムを使用してデータを解析し、そこから学習し、新しいデータに関する意思決定や予測を行うこと」です。つまり、コンピュータは得られたデータからあるモデルを取得し、そのモデルを用いて予測を行うというもので、人間が一定の経験を積むと新たな問題を予測するなど、人間の学習プロセスに似ています。

ここに画像の説明を挿入

機械学習教材:

ここに画像の説明を挿入

6. 高度な Python

基本的な文法内容から、プログラミング言語の設計を理解するためのより深い高度な知識まで、ここで学習すると、Python の入門から上級までのすべての知識を基本的に理解することができます。

ここに画像の説明を挿入

この時点で企業の採用要件はほぼ満たせますが、面接資料や履歴書のテンプレートがどこにあるのかわからないという方のためにコピーも用意しましたので、まさに体系的な学習と言えます。乳母と .

ここに画像の説明を挿入
ただし、プログラミングの学習は一夜にして達成できるものではなく、長期的な継続とトレーニングが必要です。この学習ルートを整理する中で、私自身も技術的な点を復習しながら、皆さんと一緒に進めていきたいと思っています。プログラミングの初心者であっても、高度な技術を必要とする経験豊富なプログラマーであっても、誰もがそこから何かを得ることができると私は信じています。

それは一夜にして達成できますが、長期的な忍耐力と訓練が必要です。この学習ルートを整理する中で、私自身も技術的な点を復習しながら、皆さんと一緒に進めていきたいと思っています。プログラミングの初心者であっても、高度な技術を必要とする経験豊富なプログラマーであっても、誰もがそこから何かを得ることができると私は信じています。

データ収集

Python 学習教材のフルセットのこの完全版は公式 CSDN にアップロードされています。必要な場合は、下の CSDN 公式認定 WeChat カードをクリックして無料で入手できます ↓↓↓ [100% 無料保証]

ここに画像の説明を挿入

良い記事をお勧めします

Python の展望を理解する: https://blog.csdn.net/SpringJavaMyBatis/article/details/127194835

Python のパートタイムの副業について学ぶ: https://blog.csdn.net/SpringJavaMyBatis/article/details/127196603

おすすめ

転載: blog.csdn.net/weixin_49892805/article/details/130861048