好久没有写过博客记录工作中遇到的点滴了,今天心血来潮,总结Pyspider近期在工作中遇到的问题和问题的处理方式;
需求:
1、不同任务同时爬取EPG Potal服务器模板信息;
处理方式:
1、先尝试通过pyspider直接进行爬取数据,发现单独一个账号爬取数据是正常,但是两个账号同时爬取会出现账号登录后SessionID数据出现串改情况;
2、考虑SessionID处理方式,针对当前pyspider直接通过服务器最后服务响应信息直接返回,导致永远最后一次为准;上一次的请求SessionID被替换掉;
3、考虑原有pyspider不支持这种情况,查看pyspider之前通过代理方式进行处理。每次启动后创建一个phantomjs作为一个代理服务器进行访问;
4、结合处理这种逻辑,进行在启动时按照通道情况创建多个phantomjs实例,在脚本中设置通道,该脚本中实例执行时通过通道号进行在缓存中匹配phantomjs代理服务器端口
5、大工搞成,尝试不通通道能够正常运行;