Authentication 刮痧罐头';即使在selenium成功通过身份验证后,也看不到通过的登录页面

Authentication 刮痧罐头';即使在selenium成功通过身份验证后,也看不到通过的登录页面,authentication,python-2.7,selenium-webdriver,scrapy,Authentication,Python 2.7,Selenium Webdriver,Scrapy,我对Scrapy和后来的Python都是新手,因此一直非常依赖于搜索其他人的问题来达到这个目的,但是我还没有找到任何对我解决这个问题有帮助的方法 我正在编写的脚本首先必须登录到大量使用JS的asp页面。这花了我一段时间,但我终于通过使用硒通过了它。当我运行脚本时,它会启动浏览器,登录并成功显示我想要的页面。但是,当我尝试刮取数据时,它会从原始登录页面返回结果。我也在Scrapy shell中使用了相同的效果,我不确定这个问题的根源是什么。所以为了保持简单,我一直在选择标题,当它应该返回我想要的页

我对Scrapy和后来的Python都是新手,因此一直非常依赖于搜索其他人的问题来达到这个目的,但是我还没有找到任何对我解决这个问题有帮助的方法

我正在编写的脚本首先必须登录到大量使用JS的asp页面。这花了我一段时间,但我终于通过使用硒通过了它。当我运行脚本时,它会启动浏览器,登录并成功显示我想要的页面。但是,当我尝试刮取数据时,它会从原始登录页面返回结果。我也在Scrapy shell中使用了相同的效果,我不确定这个问题的根源是什么。所以为了保持简单,我一直在选择标题,当它应该返回我想要的页面标题时,它会返回“登录”

其他一些可能相关的信息:我尝试了几个不同的页面登录。目前,我正在传递我想要的页面,该页面会将scrapy发送到登录页面,如下所示:(转到->www.site.com,站点将scrapy发送到,转到->www.site.com,浏览器中将显示正确的页面。使用hsx获取标题。title=“登录”另外,我不确定一只蜘蛛是否比另一只更合适。我从基地开始,目前它正在爬行,没有注意到任何差异

谢谢你的帮助

从scrapy.spider导入BaseSpider
从scrapy.http导入响应、FormRequest、Request
从scrapy.selector导入HtmlXPathSelector
从selenium导入webdriver
从ex.items导入exItem
从scrapy导入日志
从scrapy.contrib.spider导入爬行蜘蛛,规则
ex类(爬行蜘蛛):
名称='ex'
起始URL=['http://www.site.com']
def get_cookies(自我):
driver=webdriver.Firefox()
驱动程序。隐式等待(12)
基本url=”http://www.site.com"
获取驱动程序(基本url)
驱动程序。通过名称(“电子邮件”)查找元素。清除()
驱动程序。通过名称(“电子邮件”)查找元素。发送密钥(“123”)
驱动程序。通过名称(“密码”)查找元素。清除()
驱动程序。通过名称(“密码”)查找元素。发送密钥(“123”)
驱动程序。按名称(“登录”)查找元素。单击()
cookies=驱动程序。获取\u cookies()
返回cookies
def parse(self、response、my_cookies=get_cookies):
返回请求(url=”http://www.site.com",
cookies=self.get\u cookies(),
callback=self.login)
def登录(自我,响应):
return[FormRequest.from_response(response,formdata={'email':'123','password':'123},
dont\u filter=True,callback=self.after\u login)]
登录后的def(自我,响应):
返回请求(url=”http://www.site.com,dont\u filter=True,callback=self.parse\u页面)
def解析页面(自我,响应):
hxs=HtmlXPathSelector(响应)
sites=hxs。选择(//标题)
项目=[]
对于站点中的站点:
item=exItem()
项['title']=站点。选择('//title/text()')。提取()
items.append(项目)
退货项目
驱动程序关闭()

我最终通过修改此代码解决了这个问题。但是它给了我连接拒绝错误。为了克服这个问题,我删除了self.selenium=selenium(“localhost”,4444,“*firefox”,”)中的一行和几行