[PYTHON チュートリアル] 記事の要約を抽出する
ブログシステムの記事リストでは、記事の内容をより効果的に提示し、読者がよりターゲットを絞った読みを選択できるようにするために、通常、記事のタイトルと要約が同時に提供されます。
記事のコンテンツはプレーンテキスト形式でも構いませんが、インターネットの普及に伴い、現在では HTML 形式が多くなっています。形式に関係なく、要約は通常、記事の冒頭の内容であり、指定された文字数に従って抽出できます。
プレーンテキストの概要
まず、プレーンテキストの概要を抽出します。プレーンテキストのドキュメントは長い文字列ですが、その概要を抽出するのは簡単です:
#!/usr/bin/env python # -*- coding: utf-8 -*- """Get a summary of the TEXT-format document""" def get_summary(text, count): u"""Get the first `count` characters from `text` >>> text = u'Welcome 这是一篇关于Python的文章' >>> get_summary(text, 12) == u'Welcome 这是一篇' True """ assert(isinstance(text, unicode)) return text[0:count] if __name__ == '__main__': import doctest doctest.testmod()
HTMLの概要
HTMLドキュメントには、多数のタグが含まれています(
、
、 など)、これらの文字はマーク命令であり、通常、単純なテキストのインターセプトによって HTML の文書構造が破壊され、要約が表示されます。ブラウザが不適切に表示されました。
HTML ドキュメントの構造に従いながらコンテンツをインターセプトするには、HTML ドキュメントを解析する必要があります。 Python では、これは標準ライブラリ HTMLParser を使用して実行できます。
最も単純な概要抽出関数の 1 つは、HTML タグを無視し、タグ内のネイティブ テキストのみを抽出することです。以下は、この関数と同様の Python 実装です:
#!/usr/bin/env python # -*- coding: utf-8 -*- """Get a raw summary of the HTML-format document""" from HTMLParser import HTMLParser class SummaryHTMLParser(HTMLParser): """Parse HTML text to get a summary >>> text = u'<p>Hi guys:</p><p>This is a example using SummaryHTMLParser.</p>' >>> parser = SummaryHTMLParser(10) >>> parser.feed(text) >>> parser.get_summary(u'...') u'<p>Higuys:Thi...</p>' """ def __init__(self, count): HTMLParser.__init__(self) self.count = count self.summary = u'' def feed(self, data): """Only accept unicode `data`""" assert(isinstance(data, unicode)) HTMLParser.feed(self, data) def handle_data(self, data): more = self.count - len(self.summary) if more > 0: # Remove possible whitespaces in `data` data_without_whitespace = u''.join(data.split()) self.summary += data_without_whitespace[0:more] def get_summary(self, suffix=u'', wrapper=u'p'): return u'<{0}>{1}{2}</{0}>'.format(wrapper, self.summary, suffix) if __name__ == '__main__': import doctest doctest.testmod()
上記は、記事の要約を抽出するための [PYTHON チュートリアル] の内容です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Redisのキューを読むには、キュー名を取得し、LPOPコマンドを使用して要素を読み、空のキューを処理する必要があります。特定の手順は次のとおりです。キュー名を取得します:「キュー:キュー」などの「キュー:」のプレフィックスで名前を付けます。 LPOPコマンドを使用します。キューのヘッドから要素を排出し、LPOP Queue:My-Queueなどの値を返します。空のキューの処理:キューが空の場合、LPOPはnilを返し、要素を読む前にキューが存在するかどうかを確認できます。

Redisサーバーを起動する手順には、以下が含まれます。オペレーティングシステムに従ってRedisをインストールします。 Redis-Server(Linux/Macos)またはRedis-Server.exe(Windows)を介してRedisサービスを開始します。 Redis-Cli ping(Linux/macos)またはRedis-Cli.exePing(Windows)コマンドを使用して、サービスステータスを確認します。 Redis-Cli、Python、node.jsなどのRedisクライアントを使用して、サーバーにアクセスします。

Redisメモリサイズの設定は、次の要因を考慮する必要があります。データ量と成長傾向:保存されたデータのサイズと成長率を推定します。データ型:異なるタイプ(リスト、ハッシュなど)は異なるメモリを占めます。キャッシュポリシー:完全なキャッシュ、部分キャッシュ、フェージングポリシーは、メモリの使用に影響します。ビジネスピーク:トラフィックピークに対処するのに十分なメモリを残します。

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

** Redisメモリ構成のコアパラメーターはMaxMemoryであり、Redisが使用できるメモリの量を制限します。この制限を超えると、Redisは、Maxmemory-Policyに従って除去戦略を実行します。これには、次のようになります。その他の関連パラメーターには、Maxmemory-Samples(LRUサンプル量)、RDB圧縮が含まれます

Redis Persistenceは余分なメモリを取り、RDBはスナップショットを生成するときに一時的にメモリの使用量を増加させ、AOFはログを追加するときにメモリを取り上げ続けます。影響要因には、データのボリューム、永続性ポリシー、Redis構成が含まれます。影響を緩和するために、RDBスナップショットポリシーを合理的に構成し、AOF構成を最適化し、ハードウェアをアップグレードし、メモリの使用量を監視できます。さらに、パフォーマンスとデータセキュリティのバランスを見つけることが重要です。

Redisのデータを読み取るには、次の手順に従うことができます。1。Redisサーバーに接続します。 2。(key)を使用してキーの値を取得します。 3.文字列値が必要な場合は、バイナリ値をデコードします。 4.使用(キー)を使用して、キーが存在するかどうかを確認します。 5。mget(キー)を使用して、複数の値を取得します。 6。タイプ(キー)を使用してデータ型を取得します。 7. Redisには、次のような他の読み取りコマンドがあります。すべてのキーを一致するパターンで取得し、カーソルを使用してキーを反復し、キー値を並べ替えます。
