クローラは、モジュールとデータ分類、およびクッキーやセッションを要求します

A、要求モジュール(キー)

(A)は、モジュールの紹介を依頼します

    urllibはと要求モジュールは、最も一般的なHTTPリクエストモジュールを開始することです。

    インストール:PIPインストールreqeusts

getメソッド(b)は、モジュールを要求します

        1、応答= requests.get(

           URL = URLアドレス要求、

           リクエストヘッダ=辞書

           パラメータのparams =要求辞書、

        )

        2、一般的なパラメータを使用して要求を取得し、パラメータは、それへのパラメータのparams辞書でパッケージ化されます。

           ケース:シーナのニュース2つのアリコートは、パラメータのparams道を要求します

        3、レスポンスオブジェクト

           (1)レスポンスボディ:

               レスポンス本体A、文字列フォーマット:response.text

               B、バイト型(バイト)応答体:response.content

           (2)ゴミ問題を解決するために身体の応答:

               変換方法の間に、エンコードとデコードは、バイナリ文字列です。

               データキャリアをプログラミングされ

                  変数や定数を保存します

                  あなたは、データの内容を文字列形式でなければなりません見ることができます。

                  通常のコンピュータのデータは、基本的にバイナリ--bytesです。

                str.encode( 'コード')--->バイト

                ----> STR( 'コード')bytes.decode

               文字化け:エンコード不整合が発生します。

               response.content.decode(「正しくコーディングページ」)---正しい文字列のコンテンツページ

              

               B、response.text理由文字列の形式は要求とモジュールの底部に、実際には、得られてもよいです

               コンテンツにエンコードされたバイナリ文字列に対応する、このプロパティをresponse.encoding。実際にresponse.encodingコーディングのミスに対応します。あなただけがすることができ、正しいを指定する必要があります。

               これは自動的にリクエスト識別モジュールをresponse.encoding属性値です。

               response.encoding =「正しいページ」コード

               response.text ---「正しいページコンテンツ

               response.textが文字化けしている場合、あなたは正しいコーディングを設定response.encoding与えることができ、あなたはresponse.textによって正しいページコンテンツを取得することができます。

              

               機能内蔵&ビルトインモジュール:pythonの独自のモジュール

               DIR()

               STR()

           (3)ステータスコード:response.status_code

           (4)応答ヘッダ:response.headers

        4、ページングがどのように達成するために?

           各ページのURL要求ページング要求は、基本的にはそう実際には唯一のページング要求のparams辞書のgetその上にスルーにより、法律の分野を見つける必要があり、リクエストパラメータの決定を取得します。

           ケース:Baiduのポストバークロールページネーション情報

(C)は、ポストの要求を要求します

        応答= requests.post(

           URL = URLアドレス要求、

           リクエストヘッダ=辞書

           データ=データ要求辞書、

        )---応答オブジェクト。

      

 

              

第三に、データの分類

    1つの分類

    データの(1)構造:データは、リレーショナルデータベースに記述することができます。

        特徴:データ単位、データ・エンティティの列を示す情報に、データの各列の属性が同じです。

        例:リレーショナル・データベースに格納されたテーブル

        アプローチ:クエリ言語---言語SQL構造は--- ---リレーショナルデータベース内のデータを操作することができます。

    (2)半構造化データ:記述データワードが有します

        特長:関連するタグだけでなく、別のレコードとフィールドに使用セマンティック要素が----自己記述の階層構造になっていません

        举例:html,xml,json。

        処理方法:正規、XPathの(XML、HTML)

    (3)非構造化データ:

        特徴:なし固定データ構造。

        たとえば、次の文書、写真、ビデオ、オーディオなどが、全体保存されてバイナリ形式で保存されます。

            あなたがビデオをダウンロードする場合は、オーディオ。

        治療:

           応答= requests.get(URL = 'ビデオアドレス')

           Response.contentはノートに、ファイル名の後に、保存することができます。

    2、JSON(JSON(JavaScriptオブジェクト表記、JSオブジェクトタグ))データ

        【JSONは、データ交換フォーマットです]。

        JSONはどのように交換します。

        【実際にJsのJSON言語は、フォーム「string」は一個の技術のJSONオブジェクトと配列を表現します。自然に]だから、JSON文字列。

        JSオブジェクト:VAR OBJ = {名: 'zhangsan'、年齢:'10「} ----これは、Pythonのようにすることができる。辞書

        アレイJS:VAR ARR = [ '、 'B'、 'C​​'、 'D'] ---- pythonでこのように使用することができる:リスト。

    3、JSONデータ処理(フォーカス)

        (1)処理のためのJSONモジュールを使用。

        json_str:JSONデータ

        json.loads(json_str)---> Pythonのリストや辞書

        json.dumps(Pythonのリストや辞書)---> json_str

        モジュールリクエスト(2)、応答JSONオブジェクトは、メソッドを有する、コンテンツはJSONを解析それぞれの文字列の後に直接得ることができます

           response.json()---> Pythonのリストや辞書

四、クッキーとセッション

    1.クッキーとセッションとは何ですか?

        クッキーは、サイトユーザ、セッショントラッキング、ローカル端末に格納されたデータを識別するために使用されます。

        現在のセッション(セッション)までが意味する動作とメッセージの始まりと終わりシリーズあります。ウェブでは、セッション情報は、主に必要な特定のサーバーセッションのユーザーオブジェクトを格納するために使用されます。

    2、理由のクッキーとセッションが生成さ:

        ときに、特定の操作のHTTPプロトコルは、ステートレスなプロトコルである、あなたは情報を保存する必要があり、その後、クッキーやセッションを生成します。

    3、クッキーの原則:

        サーバー、ブラウザの最初の要求、クライアントに送信するには、さらに保存されたサーバによって生成されます。

        ブラウザにアクセスすることを続行し、クッキー情報は、リクエストヘッダにクッキーフィールドに含まれますので、サーバが訪れている人を識別することができます。

       

        しかし、クッキーは欠陥があります:

           1、安全ではない - 改ざんに対して脆弱で、ローカルに保存されました。

           2、サイズは、最大4キロバイト自体制限されています。

          

        クッキーはある程度「ホールドのニーズを解決するために、私たちは欠陥を克服することができる新しいクッキーの技術を持っていると思っていますが、この技術は、セッションです。

    4、セッションの原則:

        セッションは、サーバーに保存されています。----解決のセキュリティ問題。

        質問です:サーバー上のセッションが、クライアントは、サーバが、最終的にsession_a、session_bを、知っているどのようにオーバーし、要求に対応するリクエストを送信します。

        したがって、この問題を解決するために:ブリッジとしてのクッキー。セッションIDクッキーでは、この要求に対応するフィールドには、サーバーセッションのどちらを示すのに使用することができました。

        クッキーを無効にし、通常の状況下では、セッションを使用することはできません。あなたは、使用セッションに例外的な状況を書き換えるのURLを使用することができます。

           URL書き換え:セッションIDは、URLの内部にスプライスされます。

          

        セッションのライフサイクル:サーバーを起動するには、有効なエンドを(サイトの設定は、通常は30分程度です)を作成し、それが削除されます。

5つのよくある間違い:Webブラウザを開き、ブラウザは、このページには失敗しません、セッションを閉じていますか?
        いや、最後に、サーバは削除しないでセッションを行うセッションのライフサイクルを削除します。期間の終了は、削除されます。
 6、クッキーフィールド
        (1)名称:名前。作成したら、名前が変更されません。
        (2)値:クッキーの値。値は、Unicode文字の場合は、文字エンコーディングが必要です。値はバイナリデータである場合、BASE64符号化を使用する必要があります。
        (3)ドメイン:ドメインはcookleにアクセスすることができます。例えば、.zhihu.comに設定されている場合、zhihu.comで終わるすべてのドメイン名は、クッキーにアクセスすることができます。
        (4)MaxAgeの:秒でクッキーデッドタイム、そしてしばしば一緒に使用されたExpiresは、効果的な時間は、それを計算することができます。マックスエイジそれが正である場合、そのクッキーは最大エージング秒後に期限切れになります。無効である負の、そして近いブラウザのクッキー場合、それはどのような形態でクッキーを保存しません。
        (5)パス:クッキーを使用してパス。セットがに/パス/、唯一のパスがある場合/パス/ページには、クッキーにアクセスすることができます。設定した場合は/、その後、このドメイン下のすべてのページがcookieoにアクセスすることができ
        、このクッキーのサイズ:(6)サイズフィールド。
        (8)HTTPフィールド:HttpOnlyの属性クッキー。このプロパティがtrueの場合、この情報だけでHTTPクッキーヘッダがあろうが、これはdocument.cookieクッキーにアクセスすることはできません。
        (9)固定:クッキーのみセキュアなプロトコルを使用するかどうか。H TTPのセキュリティプロトコルは、送信前のデータにSSL等は、第一のネットワークを介してデータを暗号化されています。デフォルトはfalseです。

    7、セッションクッキーと永続的なCookieの
    セッションクッキー:最大年齢が負の場合、メモリに格納されている有効なクッキーであることを、ブラウザのクッキーの中止を閉じます。
    永続的なクッキー:それは肯定的である場合に最大年齢、そしてクッキーは最大エージング秒後に期限切れになります。お使いのハードディスクに保存されたクッキー

    永続性:ハードディスクにメモリ内のデータの永続化。実際には、ファイルやデータベースにデータを保存します。
    メモリの主な役割は、速度、起動アプリケーションやソフトウェアプログラムの速い速度によるものであり、プログラムがメモリが不足しているとして、彼らはいくつかのメモリ空間を割り当てます。
    一度ブレークポイントのメモリがクリアされます。
    
    シリアル化:ハードディスクへのオブジェクトの永続性。

 

 

リリース7件のオリジナルの記事 ウォンの賞賛0 ビュー345

おすすめ

転載: blog.csdn.net/fxd_dong/article/details/104354154