首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写可与任何服务器保持登录状态的crawler

编写可与任何服务器保持登录状态的crawler
EN

Stack Overflow用户
提问于 2009-11-26 23:18:31
回答 1查看 1K关注 0票数 0

我正在写一个爬虫。一旦爬虫登录到一个网站,我想使爬虫“停留-始终登录”。我该怎么做呢?客户端(如浏览器、爬虫等)使服务器遵守此规则吗?当服务器在一天内允许有限的登录时,可能会出现这种情况。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-11-26 23:23:46

“登录状态”通常由cookie表示。因此,您需要做的是存储登录时由该服务器发送的cookie信息,然后将该cookie与您的每个后续请求一起发送(正如Aiden Bell在其消息thx中所指出的那样)。

另请参阅此问题:

How to "keep-alive" with cookielib and httplib in python?

一篇关于如何实现它的更全面的文章:

http://www.voidspace.org.uk/python/articles/cookielib.shtml

最简单的示例位于本手册页面的底部:

https://docs.python.org/library/cookielib.html

您也可以使用常规浏览器(如Firefox)手动登录。然后,您将能够保存来自该浏览器的cookie,并在爬虫程序中使用它。但是这样的cookie通常只在有限的时间内有效,因此它不是一个长期的完全自动化的解决方案。但是,对于从Web站点下载一次内容来说,它可能非常方便。

更新:

我刚刚在最近的一个问题中发现了另一个有趣的工具:

http://www.scrapy.org

它还可以进行基于cookie的登录:

http://doc.scrapy.org/topics/request-response.html#topics-request-response-ref-request-userlogin

我提到的问题是:

Scrapy domain_name for spider

希望这能有所帮助。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1804258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档