首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Django中引发事件和对象持久性

在Django中引发事件和对象持久性
EN

Stack Overflow用户
提问于 2010-06-13 15:47:21
回答 2查看 259关注 0票数 1

我有一个棘手的Django问题,当我开发它的时候,我没有想到它。我的Django应用程序允许用户注册并存储站点的登录凭据。Django应用程序基本上允许用户搜索另一个站点(通过抓取站点上的内容),并将结果返回给用户。对于每个查询,它都会对另一个站点执行几个查询。这似乎工作得很好,但有时,另一个网站会给我一个验证码。我已经编写了获取CAPTCHA图像的代码,我需要将它返回给用户,以便他可以输入它,但我不知道如何操作。

我在Django应用程序中的搜索请求(查询、用户名和密码)被传递给一个视图,该视图反过来调用执行抓取/搜索的后端。当检测到CAPTCHA时,我想在这些行上引发一个客户端事件或其他东西,并向用户显示CAPTCHA,并等待用户的输入,以便我可以继续搜索。我需要在两次调用之间持久化我的后端对象。我尝试过对它进行酸洗,但它不起作用,因为我得到了Can't pickle 'lock' object错误。不过,我不知道如何实现它。有什么帮助/想法吗?

非常感谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-13 16:20:03

另外需要记住的是:您需要维护与远程站点的浏览器会话,以便该站点知道您正在尝试解决哪个验证码问题。很多‘re客户端允许你存储你的cookie,我建议你将它们转储到你正在为其进行屏幕抓取的用户的Django会话中。然后在提交验证码时重新加载它们。

以下是我如何看待事件的完整转折:

验证码用户将search request

  • Query remote site

  • 放入本地验证码图像验证码(可能是为了将验证码提交给您的用户,form

  • 用户将验证码从#4加载

并以验证码形式提交表单)如果不是验证码,则将远程cookie提交给本地验证码验证码用户。您从#4加载验证码并以验证码的形式提交表单页面外的数据,向用户击掌。H222<代码>G223

票数 2
EN

Stack Overflow用户

发布于 2011-07-14 15:42:07

然后request.session['name'] = variable会把它存储起来,

variable = request.session['name']将检索它。但请记住,它不是一个数据库,只是一个简单的会话存储,不应该依赖于任何关键的东西

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

https://stackoverflow.com/questions/3031483

复制
相关文章

相似问题

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