首页 > 解决方案 > scrapy登录后怎么爬?

问题描述

我目前正在尝试在登录后抓取电子商务网站,但似乎我做错了什么,因为scrapy它唯一的抓取(控制台中没有日志信息)

class InsSpider(scrapy.Spider):
name = 'loginin'
allowed_domains = ['examplesite.com.ar']

url = 'http://www.examplesite.com.ar'
url_login = 'http://www.examplesite.com.ar/account'

def start_requests(self):
    return [Request(self.url_login, callback=self.login)]
def login(self, response):
    login_post = {'username': 'user',
                  'password': 'pass'}
    return [FormRequest.from_response(response,
                                      formdata=login_post,
                                      # callback=self.start_requests,
                                      dont_filter=True
                                      )]

class MercadoSpider(CrawlSpider):
    name = 'extractor'
    //crawling code

如何正确登录页面?

这是登录html:

<form method="post" action="" class="form">
<fieldset class="col-md-8">
<legend>Ingresar</legend>
<div class="form-group"><label>Email</label> <input type="text" id="loginUserID" name="loginUserID" value="" class="form-control" /></div>
<div class="form-group"><label>Contrase&ntilde;a</label> <input type="password" id="loginPass" name="loginPass" value="" class="form-control" /></div>
<div class="form-group"><button type="submit" class="btn btn-primary">Login</button></div>
<p><a href="/password/recover">Olvid&oacute; su contrase&ntilde;a?</a></p>
<p>No est&aacute; registrado? <a href="/users/register">Reg&iacute;strese aqu&iacute;</a></p>
</fieldset>
</form>

标签: pythonscrapy

解决方案


推荐阅读