title: How do I pass form data with Scrapy from the command line?
body: <p>How could I pass username and password from the command line? Thanks!</p>
  
  <pre><code>class LoginSpider(Spider):
      name = 'example.com'
      start_urls = ['http://www.example.com/users/login.php']
  
      def parse(self, response):
          return [FormRequest.from_response(response,
                      formdata={'username': 'john', 'password': 'secret'},
                      callback=self.after_login)]
  
      def after_login(self, response):
          # check login succeed before going on
          if "authentication failed" in response.body:
              self.log("Login failed", level=log.ERROR)
              return
  
          # continue scraping with authenticated session...
  </code></pre>