Selenium を使用してメンバーのログインが必要な Web ページを読み取る
Web ページのコンテンツを読み取るためのクローラーを作成するために Selenium を使用するのは非常に一般的な要件です。ただし、制限されたコンテンツをアップロードするためにブログなどの Web ページが表示される場合があります。本はこの例です。次のチャット ウィンドウが表示されます:
Cookie はアカウントにログインした後のログイン情報の記録に使用されるため、そのような Web ページを読むには、最初に手動でログインしてから、Cookie をファイルにエクスポートすることができます。その後、Selenium を使用して Web ページをクロールするときに、エクスポートされた Cookie を再度追加し、Web ページを再編成すると、Web コンテンツを正常に読み取ることができます。
Cookieをエクスポートする
まず、Selenium を使用して読みたい Web ページを開いてください。例としてブログを示します。
>>> from selenium import webdriver >>> driver = webdriver.Edge() >>> driver.get('https://www.books.com.tw')
この時点では、通常の手順に従ってメンバーとしてログインし、cookie_editor プラグインをインストールしてください:
必ずブログのホームページに戻り、プラグインを使用してすべての Cookie を JSON 形式でエクスポートしてください:
Cookie の内容がクリップボードにコピーされます。テキスト エディターに貼り付けて、ご自身でアーカイブしてください。
Cookieを再追加します
次に、Selenium を閉じて、再度開きます。
>>> from selenium import webdriver >>> driver = webdriver.Edge() >>> driver.get('https://www.books.com.tw')
Cookie を追加するには、Cookie と同じドメインの Web ページにアクセスしている必要があります。そのため、Web ページにアクセスするには、最初にブログを開いてください。次に、Cookie を保存するファイルを開いて Python 辞書にロードできます:
>>> import json >>> with open('cookies.json') as f: ... cookies = json.load(f)
Cookie を 1 つずつ追加して戻します:
>>> for cookie in cookies: ... driver.add_cookie(cookie)
この時点で、次のエラーが表示されるはずです:
Traceback (most recent call last): File "<stdin>", line 3, in <module> File "C:\Users\meebo\code\python\poetry_env\py310\.venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 670, in add_cookie assert cookie_dict["sameSite"] in ["Strict", "Lax", "None"] AssertionError
これは、Cookie エディターによってエクスポートされたデータでは、sameSite 属性が「no_restriction」を表すために null を使用しているためです。これは、制限がなく、同じ Web サイトである必要があることを意味しますが、Selenium は「Strict」、「Lax」のみを認識します。 "、"None" したがって、これら 3 つの制限はエラーとして診断されます。JSON ファイルを手動で変更し、すべての SameSite 属性値を "None" に変更する必要があります (文字列であることに注意してください)。また、ドメインが「.books.com」ではありません。 Cookie の削除:
[ { "domain": ".books.com.tw", "expirationDate": 1767941747.633402, "hostOnly": false, "httpOnly": false, "name": "_ga_TR763QQ559", "path": "/", "sameSite": null, "secure": false, "session": false, "storeId": null, "value": "GS1.1.1733381542.1.1.1733381747.0.0.0" }, ... { "domain": ".books.com.tw", "expirationDate": 1748933733, "hostOnly": false, "httpOnly": false, "name": "__eoi", "path": "/", "sameSite": "no_restriction", "secure": true, "session": false, "storeId": null, "value": "ID=7f42c4647467b5fb:T=1733381733:RT=1733381733:S=AA-AfjbpJCe1kw2klEX0xW55n9CY" }, ... ]
変更後、リロードして Cookie を追加すると、エラーは発生しなくなります。
Web ページを更新して Cookie を有効にします
Cookie を追加した後も、表示される画面はまだログインしていない画面です:
Cookie を有効にするには、ページを更新する必要があります:
>>> driver.refresh()
表示されるのは、メンバーとしてログインするためのページです:
このようにして、Selenium を使用して、メンバーのログインが必要なページを読み取ることができます。
最後に思い出していただきたいのは、Cookie は有効であるということです。一定期間が経過しても以前に保存された Cookie を使用してログインできない場合は、上記の手順に従って Cookie を再度取得してください。
以上がSelenium を使用してメンバーのログインが必要な Web ページを読み取るの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

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

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

Stock Market GPT
AIを活用した投資調査により賢明な意思決定を実現

人気の記事

ホットツール

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

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

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

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

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

Pipinstall-rrequirements.txtを実行して、依存関係パッケージをインストールします。競合を回避し、ファイルパスが正しく、PIPが更新されていることを確認し、必要に応じて-no-depsや-userなどのオプションを使用して、必要に応じてインストール動作を調整することを確認して、最初に仮想環境を作成およびアクティブ化することをお勧めします。

このチュートリアルは、PEFT LORAアダプターをベースモデルと効率的にマージして、完全に独立したモデルを生成する方法を詳しく説明しています。この記事は、トランスフォーマーを直接使用することは間違っていることを指摘しています。Automodelはアダプターをロードし、重みを手動でマージし、PEFTライブラリでMerge_and_unloadメソッドを使用する正しいプロセスを提供します。さらに、このチュートリアルでは、単語セグメントターを扱うことの重要性も強調し、PEFTバージョンの互換性の問題とソリューションについて説明しています。

Pythonは、Pythonのシンプルで強力なテストツールです。インストール後、命名ルールに従ってテストファイルが自動的に発見されます。アサーションテストのためにtest_から始まる関数を書き込み、 @pytest.fixtureを使用して再利用可能なテストデータを作成し、pytest.raisesを使用して例外を確認し、指定されたテストと複数のコマンドラインオプションをサポートし、テスト効率を改善します。

theargparsemoduleisttherecommendedwayto handlecommand-lineargumentsinpython、robustparsing、typevalidation、helpmessages、およびerrorhandling; ousesys.argvforsimplecasesrequiringminimalsetup。

この記事の目的は、PythonとNumpyの浮動小数点数の計算精度が不十分であるという一般的な問題を調査し、その根本原因は標準64ビットの浮動小数点数の表現制限にあることを説明しています。より高い精度を必要とするシナリオを計算するために、この記事では、MPMATH、Sympy、GMPYなどの高精度数学ライブラリの使用方法、機能、および適用可能なシナリオを導入して比較し、読者が複雑な精度のニーズを解決するための適切なツールを選択できるようにします。

PYPDF2、PDFPlumber、およびFPDFは、PDFを処理するPythonのコアライブラリです。 pypdf2を使用して、pdfreaderを介してページを読み取り、extract_text()を呼び出してコンテンツを取得するなど、テキスト抽出、マージ、分割、暗号化を実行します。 PDFPlumberは、レイアウトテキストの抽出とテーブル認識を保持するのに適しており、Extract_Tables()をサポートしてテーブルデータを正確にキャプチャします。 FPDF(推奨されるFPDF2)はPDFを生成するために使用され、ドキュメントが構築され、add_page()、set_font()、およびcell()を介して出力されます。 PDFSをマージすると、PDFWriterのAppend()メソッドは複数のファイルを統合できます

現在の時間を取得することは、DateTimeモジュールを介してPythonで実装できます。 1。DateTime.Now()を使用してローカル現在の時間を取得します。 Depcated Utcnow()、および日常業務は、datetime.now()とフォーマットされた文字列を組み合わせてニーズを満たすことができます。

@ContextManagerFromContextLibandDefineAgeneratoratoraturationは、sexactlyOnceを使用します
