2017-10-12 9 views
0

私はScrapyを使用してウェブサイトにログインしようとしています。私は正常に他のウェブサイトのためにこれをやったが、私はこの時間にトラブルを抱えているようだと私はなぜわからない。迷惑メールのログインに失敗しました

添付ファイルは、このコードを実行したときのレスポンスのスクリーンショットと、ログインしようとしているページの検査です。

import scrapy                              

class iauditorSpider(scrapy.Spider):            
    name = "iauditor"               
    start_urls = ['https://app.safetyculture.io/login.html']      

    def parse(self, response):                       
     return scrapy.FormRequest.from_response(        
      response,                         
      formid = 'login-form',                      
      formdata={'email': '[email protected]',        
         'password': 'secret'},          
      callback=self.after_login                     
     )                            

    def after_login(self, response):                      
     #Check login success before continuing         
     if(b'Those details don\'t appear to be correct.' in response.body):  
      self.logger.error("Login Failed.")         
      return 

My ResponsePage Inspect

私はそれがこの時間を働いていない理由を私は混乱していますほとんど同じコードを持つ前に、他のウェブサイトに正常にログインしました。

答えて

0

ログインを実行するには、ヘッダーとCookieを送信する必要があります。

ログインページへ
  1. ゴー
  2. オープンDeveloper Tools、あなたが別のページにリダイレクトされたときに必ずログが今、そのサイトにログイン
  3. 保たれているようにするPreserve LogsまたはPersistNetworkタブ
  4. クリックしに行きますログインボタンをクリックしたときにどのようなリクエストが送信されるかを確認してください。
  5. 今すぐとcURLコマンドを貼り付けてください。

これで、ログインを実行する正確なPythonコードを取得できました。

+0

チャームのように働いた! cURLコマンドで生成されたコードを使用した後、私は正常に私の治療プログラムを続けることができました。ありがとう! – SockPastaRock