为了给娃买纸尿裤和米粉之类的东西,用 Python 写了个脚本,定时查询京东上指定商品的价格,如果有降价就通过 Server 酱的服务发微信通知我。 之前用的 ‘ http://p.3.cn/prices/mgets?skuIds=J_' + sku 这个接口,正常返回结果是这样的:
[{"id":"J_652352","p":"259.00","m":"299.00","op":"259.00"}]
在虚拟主机上跑了一天多以后,就开始返回 error :
{'error': 'pdos_captcha'}
我的设定是每小时查询一次,一共只有十几个商品,一天下来一共才二百多次请求,应该不会因为请求太频繁被封 ip 了吧。
之后我在自己的笔记本电脑上又试了试,还是这样的情况。从昨天下午到今天下午,之前一直都正常,也就刚才,忽然就返回 error 了。不知道这个接口是不是对 24 小时内的请求数量有限制,而且非常小?
现在我虚拟主机上的情况是,自从返回这个 error 之后,都过去几天了,再也没有成功查询过。就算是封 ip ,也不至于这么决绝吧。
求大佬指点一下,这个“ pdos_captcha ”到底是什么意思。
如果想继续使用这个接口,应该怎么做?
我知道还有其他的途径查询到价格,但是通过 p.3.cn 这个应该是最简单快捷的吧,所以还是想把问题解决,继续用这个接口查价格
1
iamaprin 2017-02-12 19:52:13 +08:00
captcha 是验证码的意思;应该是访问接口需要验证码。而你的脚本并没有解析验证码;
|
2
grimpil OP @iamaprin 一开始并不需要验证码,难道是超过一定次数才需要?
我看好多人都在用这个接口,也都没说验证码的事儿 |
3
tinyproxy 2017-02-13 09:52:58 +08:00 via iPhone
除非是开发这个程序和维护的人,没人回答的了你这个问题,这种问题都是靠猜,靠经验解决的。
我赞同一楼的看法,验证码问题。至于封 IP 的行为,看站长心情,我的 VPS 被封过半年。 |
4
echooc 2017-04-25 17:36:38 +08:00
再多加一个参数 pdtk=&pduid 就可以了。但是不知道这个参数会不会有时间的限制,因为感觉这个参数可能和 session 有关
|