PYTHONを使用してニュース記事をクロールする方法

この記事では、Pythonを使用してニュース記事をクロールする方法について説明します。これは、便利な新聞のパッケージを使用して行うことができます。

Python新聞パッケージの紹介##

pipを使用して、新聞パッケージをインストールできます。

pip install newspaper

インストールが完了したら、開始できます。新聞は、特定のURLから記事を取得するか、Web上の他のニュースへのリンクを見つけることで機能します。記事を扱うことから始めましょう。まず、* Article クラスをインポートする必要があります。次に、このクラスを使用して、URLからニュース記事にコンテンツをダウンロードします。次に、 parse メソッドを使用してHTMLを解析します。最後に、。text *を使用して記事のテキストを印刷できます。

記事を登る###

from newspaper import Article
 
url ="https://www.bloomberg.com/news/articles/2020-08-01/apple-buys-startup-to-turn-iphones-into-payment-terminals?srnd=premium"
 
# download and parse article
article =Article(url)
article.download()
article.parse()
 
# print article text
print(article.text)

投稿に埋め込まれた画像や動画へのリンクなど、記事に関するその他の情報を取得することもできます。

# get list of image links
article.images
 
# get list of videos - empty inthiscase
article.movies

ページにリンクされているすべての記事をダウンロードする###

それでは、すべてのニュース記事をWebページにリンクする方法を見てみましょう。これを実現するために、次の* news.build メソッドを使用します。次に、 article_urls *メソッドを使用して記事のURLを抽出できます。

import newspaper
 
site = newspaper.build("https://news.ycombinator.com/")  
 
# get list of article URLs
site.article_urls()

上記のオブジェクトを使用して、各記事のコンテンツを取得することもできます。ここでは、すべての記事オブジェクトが* list.site.articles *に保存されています。たとえば、最初の記事の内容を取得しましょう。

site_article = site.articles[0]
 
site_article.download()
site_article.parse()print(site_article.text)

それでは、コードを変更して上位10件の記事を取得しましょう。

top_articles =[]for index inrange(10):
 article = site.articles[index]
 article.download()
 article.parse()
 top_articles.append(article)

警告!

新聞を使用する場合、重要な注意点は、同じURLで* newspaper.build を複数回実行する場合、
パッケージはキャッシュされ、スクレイプされた記事は削除されます。たとえば、以下のコードでは、
Newspaper.build *を2回実行すると、異なる結果が得られます。 2回目に実行すると、コードは新しく追加されたリンクのみを返します。

site = newspaper.build("https://news.ycombinator.com/")print(len(site.articles))
 
site = newspaper.build("https://news.ycombinator.com/")print(len(site.articles))

以下に示すように、関数呼び出しにパラメーターを追加することで調整できます。

site = newspaper.build("https://news.ycombinator.com/", memoize_articles=False)

記事の概要を取得する方法###

新聞パッケージは、いくつかのNLP機能もサポートしています。 * nlp *メソッドを呼び出すことで確認できます。

article = top_articles[3]
 
article.nlp()

それでは、* summary *メソッドを使用しましょう。これにより、記事の概要が返されます。

article.summary()

記事からキーワードのリストを取得することもできます。

article.keywords

最も人気のあるGoogleキーワードを取得する方法###

新聞には他にもいくつかのクールな機能があります。たとえば、* hot *メソッドを使用すると、Googleで最も人気のある検索を簡単に引き付けることができます。

newspaper.hot()

以下に示すように、パッケージは人気のあるURLのリストを返すこともできます。

newspaper.popular_urls()

Recommended Posts

PYTHONを使用してニュース記事をクロールする方法
パイソンタプルの使い方
pythonスレッドプールの使用方法
PythonでSQLiteを使用する方法
およびおよびまたはPythonでの使用方法
pythonでround関数を使用する方法
Pythonでzip関数を使用する方法
pythonでformat関数を使用する方法
pythonでアシスタントを実行するコードを使用する方法
pythonコードにコメントする方法
pythonをすばやく学ぶ方法
pythonプラグインをアンインストールする方法
pythonオブジェクトを理解する方法
pythonのヘルプ機能の使い方
pythonウェブページコードの表示方法
ubuntuでhanlpを使用する方法
pythonを使用してOracleデータベースにクエリを実行します
C ++を使用してPython3拡張機能を作成する
python設定ファイルの書き方
pythonを使用して段階的な回帰を実現します
pythonコードでラップする方法
pythonプログラムを保存する方法
Pythonで括弧を省略する方法
CentOS8にPython3.8をインストールする方法
Ubuntu18.04にPython3.8をインストールする方法
pythonでクラスを書く方法
pythonで数値をフィルタリングする方法
PythonでExcelを読む方法
CentOS8にPythonをインストールする方法
python dict garbledを解決する方法
pythonでエラーを表示する方法
pythonでreturnを書く方法
pythonモジュールを表示する方法
Pythonで変数を理解する方法
pythonで変数をクリアする方法
pythonオブジェクト指向プログラミングを理解する方法
pythonのインストールが成功したことを確認する方法
Pythonで地球を作る方法
pythonでキャッシュファイルを削除する方法
Pythonでサードパーティモジュールを導入する方法
pythonでテキストファイルを保存する方法
Pythonを使用して飛行機の戦争ゲームを作成する
pythonでwinプログラムを書く方法
pythonでid関数を実行する方法
Pythonでサードパーティモジュールをインストールする方法
pythonでエラーをカスタムキャッチする方法
pythonでtryステートメントを書く方法
Python |コレクションはとても使いやすいです! !
Pythonでプライベート属性を定義する方法
Ubuntu16.04でSambaサーバーを使用する方法
Pythonを使用してDouyinキャラクタービデオを生成してください!
R&D:CentOS7にPython3をインストールする方法
Pythonでカスタムモジュールを追加する方法
pythonでexcelテーブルを処理する方法
Pythonでグローバル変数を理解する方法
インストールされているモジュールをpythonで表示する方法
Python初心者はライブラリの使い方を学びます
Ubuntu20.04 ubuntu / focal64にPython2をインストールする方法
Pythonを使用して画像をすばやく切り取る
reprを使用してpythonプログラムをデバッグする方法
Pythonタイムモジュールを学ぶ方法