こんにちは、みんな!
私は Pxyup です。今日はオープンソース プロジェクト Fitter を代表したいと思います。
PxyUp
/
フィッター
API/Webサイトから情報を収集する新しい方法
Fitter Fitter CLI
Fitter - API/Web サイトから情報を収集する新しい方法
Fitter CLI - テスト/デバッグ/家庭で使用するために Fitter からの結果を提供する小さな cli コマンド
Fitter Lib - Fitter CLI の機能をライブラリとして提供するライブラリ
情報収集方法
- サーバー - いくつかの API または http リクエストからの応答を解析します (http.Client の使用)
- ブラウザ - chromium docker playwright/cypress を使用して実際のブラウザをエミュレートし、DOM 情報を取得します
- 静的 - 静的文字列をデータとして解析します
解析可能な形式
- JSON - JSON を解析して特定の情報を取得します
- XML - XML ツリーを解析して特定の情報を取得します
- HTML - dom ツリーを解析して特定の情報を取得します
- XPath - 特定の情報を取得するために dom ツリーを解析しますが、xpath によって行われます。
図書館のように使える
go get github.com/PxyUp/fitter
go get github.com/PxyUp/fitter
…作成方法
2023 年、私は Trip Searcher というアイデアに取り組みました。
go get github.com/PxyUp/fitter
Trip Searcher はフライトを監視し、さまざまな目的地までの合計料金を含む出発都市からの潜在的なルートを返し、次のような通知を Telegram に送信します。
package main import ( "fmt" "github.com/PxyUp/fitter/lib" "github.com/PxyUp/fitter/pkg/config" "log" "net/http" ) func main() { res, err := lib.Parse
この設定では、前述のサイトに接続するための国、都市、空港コードのリストが必要でした。開発中に、これらすべての情報を簡単に組み合わせて解析してリクエストを効率化できたらどんなに便利だろうかと考え始め、それが私が Fitter と呼ぶプロジェクトのアイデアにつながりました。
追伸: このプロジェクトは個人使用を目的としています。
フィッター CLI
ユーザーフレンドリー (JSON) またはカスタム形式でデータを返すコード不要のマップ リデューサー。データベースへの保存や HTTP 経由の送信に適しています。
特徴:
- HTML (クエリ)、JSON (gjson)、XML、および xpath パーサーによる解析をサポートします。
- カスタム プラグインのサポートにより、Docker、Playwright (ステルス モード)、HTTP クライアント、キャッシュ、ファイル、または伝播されたフィールドを使用して、ブラウザーと同様にデータを取得します。
- Playwright および HTTP クライアントにプロキシ サポートを提供します。
- プラグインを介して、ファイル、Webhook、コンソールなどに情報を送信または保存できます。
- すべてのデータ型を処理します: int、float、bool、array、object、null、string。
- フィールドを結合 (マップリデュース) して変換します。
- アプリケーション全体で使用できる、テンプレート構文の強力な expr ライブラリを利用します。
- スタンドアロンのバイナリおよび Docker バージョンとして提供されます。
- ブラウザ/Docker の使用に対するリクエスト数またはインスタンスの制限を許可します。
例
静的生成:
ここでは、ハードコードされた静的配列を生成するだけです
1. You enter a budget. 2. You specify a starting city or country. 3. You set the trip duration and a range of possible start and end dates.
1. Flight costs (parsed from Google or Kiwi). 2. Hotel prices (from Airbnb or Booking). 3. Food costs (retrieved from Numbeo).
現在時刻を取得する
Web サイトから情報を取得し、ユーザーに返します。
./fitter_cli_v1.0.18-darwin-amd64 --url=https://raw.githubusercontent.com/PxyUp/fitter/refs/heads/master/examples/cli/config_static_connector.json
[ "PAGE: 1 INDEX: 0", "PAGE: 2 INDEX: 1", "PAGE: 3 INDEX: 2", "PAGE: 4 INDEX: 3", "PAGE: 5 INDEX: 4" ]
現在の Steam セールを取得する
これにより、指定されたディレクトリに sales.md
が作成されますHackerNews からベストニュースを取得 各コメントリスト
この構成では、最初のリクエストから次のリクエストに結果を伝播するためのテンプレート構文を使用しています。
go get github.com/PxyUp/fitter
package main import ( "fmt" "github.com/PxyUp/fitter/lib" "github.com/PxyUp/fitter/pkg/config" "log" "net/http" ) func main() { res, err := lib.Parse
ウェブサイトからすべての画像をスクレイピングしてローカルに保存します
1. You enter a budget. 2. You specify a starting city or country. 3. You set the trip duration and a range of possible start and end dates.
1. Flight costs (parsed from Google or Kiwi). 2. Hotel prices (from Airbnb or Booking). 3. Food costs (retrieved from Numbeo).
フィッター
Fitter は、次の機能を備えた Fitter CLI の拡張バージョンです。
- トリガー用のHTTPサーバー
- 電報メッセージ/Webhook として応答を返す
- そして、現時点ではドキュメントがありません:)
使用法
このツールはさまざまな目的で使用できます:
- ウェブスクラッパー
- プラグインを使用したデータスクラッパー
- 特定の負荷テストを作成する
- チャットボットを構築 - 電報チャネルを自動化するために使用します
たとえば、このジョブは毎日最高の開発者を記事に送信します:
予定
- ブラウザ ツールをさらに追加します。クリック/スクロールのように(現在はJSインジェクションのみで実行可能)
- テンプレート構文の改善
- カスタム テンプレート エディター構成エディターを追加
- 顧客向けにカスタム ワークフローを実行し、結果を APP/Watch/etc に返すためにフィッター CLI 用の SASS を検討する可能性があります。
フィードバックをお待ちしています!質問があれば質問してください
以上がFitter - さまざまなソースなどからのデータをマップリデュースするためのオープンソースのノーコード ツールです。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

GO言語で文字列パッケージをマスターすると、テキスト処理機能と開発効率が向上します。 1)コンテナ機能を使用してサブストリングを確認し、2)インデックス関数を使用してサブストリング位置を見つけ、3)関数を効率的にスプライスストリングスライス、4)機能を置き換えてサブストリングを置き換えます。空の文字列や大きな文字列操作のパフォーマンスの問題をチェックしないなど、一般的なエラーを避けるように注意してください。

文字列の操作を簡素化し、コードをより明確かつ効率的にすることができるため、GOの文字列パッケージを気にする必要があります。 1)文字列を使用して、弦を効率的にスプライスするために参加します。 2)文字列を使用して、空白の文字で文字列を分割します。 3)文字列を介してサブストリング位置を見つけます。Indexと文字列lastindex; 4)文字列を使用して、文字列を置き換える。 5)文字列を使用して、ビルダーを効率的にスプライスします。 6)予期しない結果を避けるために、常に入力を確認してください。

theStringspackageIngoisESSENTINEFOREFFSTRINGMANIPULATION.1)ITOFFERSSSIMPLEYETPOWERFULFUNCTIONS FORTOSSCHECKINGSUBSTRINGSNINGSTRINGS.2)ITHANDLESUNICODEWELL、ITHANDLESUNICODEWELL

whendeciding botedego'sbytespackageandstringspackage、usebytes.bufferbinarydataandstrings.builderforstringoperations.1)usebytes.bufferforkithbyteslices、binarydata、appendingdatatypes、およびwritioio.writioio.writioio.writioio.writioio.

Goの文字列パッケージは、さまざまな文字列操作機能を提供します。 1)文字列を使用して、サブストリングを確認します。 2)文字列を使用して、ストリングをサブストリングスライスに分割します。 3)文字列を通して文字列をマージします。 4)文字列または文字列を使用して、文字列の最初と端でブランクまたは指定された文字を削除します。 5)指定されたすべてのサブストリングを文字列に置き換えます。ReplaceAll。 6)文字列を使用して、hasprefixまたは文字列hassuffixを使用して、文字列の接頭辞または接尾辞を確認します。

GO言語文字列パッケージを使用すると、コードの品質が向上します。 1)文字列を使用して()join()を使用して、パフォーマンスのオーバーヘッドを避けるために、文字列アレイをエレガントに接続します。 2)strings.split()とstrings.contains()を組み合わせて、テキストを処理し、ケースの感度の問題に注意を払います。 3)文字列の乱用を避け、replace()を回避し、多数の置換に正規表現を使用することを検討します。 4)文字列を使用して、ビルダーを使用して、頻繁にスプライシング文字列の性能を向上させます。

GoのBYTESパッケージは、バイトスライスを処理するためのさまざまな実用的な機能を提供します。 1.bites.containsは、バイトスライスに特定のシーケンスが含まれているかどうかを確認するために使用されます。 2.bites.splitは、バイトスライスをスモールピースに分割するために使用されます。 3.bites.joinは、複数のバイトスライスを1つに連結するために使用されます。 4.bites.trimspaceは、バイトスライスのフロントブランクとバックブランクを削除するために使用されます。 5.バイト。エクアルは、2つのバイトスライスが等しいかどうかを比較するために使用されます。 6.bytes.indexは、大規模なスライスでサブスライスの開始インデックスを見つけるために使用されます。

エンコード/binaryPackageIngoisESSENTINESTENTINESTINESTIDANDARDIZEDWAIDTOREADANDWRITEBINIRYDATA、クロスプラットフォームコンパティビティアンドハンドリングの可能性を確保することを確認します


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

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

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

Dreamweaver Mac版
ビジュアル Web 開発ツール
