Добрый день, есть программка RankTracker, которая проверяет позиции сайта, с неё не ловится капча.
Единственный поддерживаемый программой сервис распознавания это deathbycaptcha.
Программа отправляет запрос на сайт http://api.dbcapi.me/api/captcha?language=ru
В ответ приходит такое:
CM стоит на локальном компе, hosts вроде настроен (при переходе на http://api.dbcapi.me/ открывается страничка CapMonster 2 intercept). Подскажите пож как можно решить эту проблему?
Сама программа написана на java, и в логе вылетакой такой эксепшн
Единственный поддерживаемый программой сервис распознавания это deathbycaptcha.
Программа отправляет запрос на сайт http://api.dbcapi.me/api/captcha?language=ru
Код:
POST /api/captcha?language=ru HTTP/1.1
Accept: application/json
User-Agent: DBC/Java v4.5
Content-Type: multipart/form-data; boundary=faabb102971992246024bd54631469a49d24384b
Content-Length: 6563
Host: api.dbcapi.me
Connection: close
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="username"
Content-Type: text/plain
Content-Length: 15
login
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="password"
Content-Type: text/plain
Content-Length: 12
password
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="swid"
Content-Type: text/plain
0
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="challenge"
Content-Type: text/plain
Content-Length: 0
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="banner_text"
Content-Type: text/plain
Content-Length: 0
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="grid"
Content-Type: text/plain
Content-Length: 0
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="type"
Content-Type: text/plain
Content-Length: 3
600
--faabb102971992246024bd54631469a49d24384b
Content-Disposition: form-data; name="captchafile"; filename="captcha"
Content-Type: application/octet-stream
Content-Length: 5337
PNG
Код:
HTTP/1.1 200 OK
Server: Microsoft-HTTPAPI/2.0
Date: Tue, 07 Nov 2017 15:09:57 GMT
Connection: close
Content-Length: 0
CM стоит на локальном компе, hosts вроде настроен (при переходе на http://api.dbcapi.me/ открывается страничка CapMonster 2 intercept). Подскажите пож как можно решить эту проблему?
Сама программа написана на java, и в логе вылетакой такой эксепшн
Код:
java.lang.NullPointerException
at java.io.StringReader.<init>(Unknown Source)
at org.json.JSONTokener.<init>(JSONTokener.java:118)
at org.json.JSONObject.<init>(JSONObject.java:199)
at com.agilemind.commons.application.modules.captcha.deathbycaptcha.HttpClient.call(HttpClient.java:110)
at com.agilemind.commons.application.modules.captcha.deathbycaptcha.HttpClient.upload(HttpClient.java:30)
at com.agilemind.commons.application.modules.captcha.deathbycaptcha.Client.decode(Client.java:111)
at com.agilemind.commons.application.modules.captcha.deathbycaptcha.Client.decode(Client.java:9)
at com.agilemind.commons.application.modules.captcha.deathbycaptcha.Client.decode(Client.java:113)
at com.agilemind.commons.application.modules.captcha.b.a(b.java:11)
at com.agilemind.commons.application.modules.captcha.b.requestCaptcha(b.java:26)
at com.agilemind.commons.application.modules.captcha.AbstractCaptchaRequestor.requestCaptcha(AbstractCaptchaRequestor.java:26)
at com.agilemind.commons.application.modules.captcha.AbstractSearchEngineManager.requestCaptcha(AbstractSearchEngineManager.java:43)
at com.agilemind.commons.io.searchengine.searchengines.AbstractCaptchaSolution.a(AbstractCaptchaSolution.java:26)
at com.agilemind.commons.io.searchengine.searchengines.AbstractCaptchaSolution.getAfterCaptchaUrl(AbstractCaptchaSolution.java:7)
at com.agilemind.commons.io.searchengine.searchengines.WebBasedSearchEngineParser.a(WebBasedSearchEngineParser.java:74)
at com.agilemind.commons.io.searchengine.searchengines.WebBasedSearchEngineParser.readCompletePage(WebBasedSearchEngineParser.java:36)
at com.agilemind.commmons.io.searchengine.engines.web.yandex.c.readCompletePage(c.java:49)
at com.agilemind.commons.io.searchengine.searchengines.WebBasedSearchEngineParser.a(WebBasedSearchEngineParser.java:39)
at com.agilemind.commons.io.searchengine.searchengines.WebBasedSearchEngineParser.search(WebBasedSearchEngineParser.java:20)
at com.agilemind.commons.io.searchengine.searchengines.WebBasedSearchEngineParser.search(WebBasedSearchEngineParser.java:73)
at com.agilemind.commons.io.searchengine.searchengines.SearchEngine.search(SearchEngine.java:11)
at com.agilemind.ranktracker.util.KeyPositionAnalyzer.a(KeyPositionAnalyzer.java:246)
at com.agilemind.ranktracker.util.KeyPositionAnalyzer.a(KeyPositionAnalyzer.java:184)
at com.agilemind.ranktracker.util.L.getProxifiedPosition(L.java:1)
at com.agilemind.ranktracker.util.b.a(b.java:1)
at com.agilemind.ranktracker.util.b.externalServiceWorker(b.java:6)
at com.agilemind.commons.io.proxifier.a.externalServiceWorker(a.java:2)
at com.agilemind.commons.io.gateway.g.worker(g.java:2)
at com.agilemind.commons.io.proxifier.Proxifier.query(Proxifier.java:80)
at com.agilemind.commons.io.gateway.GatewayProxifier.query(GatewayProxifier.java:33)
at com.agilemind.commons.io.proxifier.ExternalServicesProxifier.query(ExternalServicesProxifier.java:7)
at com.agilemind.ranktracker.util.KeyPositionAnalyzer.getPosition(KeyPositionAnalyzer.java:193)
at com.agilemind.ranktracker.util.a.retrieve(a.java:2)
at com.agilemind.ranktracker.util.a.retrieve(a.java:3)
at com.agilemind.commons.io.pagereader.cache.impl.LockedCache.get(LockedCache.java:2)
at com.agilemind.ranktracker.util.AnalyzerCache.getCachedPosition(AnalyzerCache.java:5)
at com.agilemind.ranktracker.util.CheckKeywordOperation.z(CheckKeywordOperation.java:9)
at com.agilemind.ranktracker.util.CheckKeywordOperation.executeAndReturn(CheckKeywordOperation.java:44)
at com.agilemind.commons.modules.concurrent.util.operations.IndeterminateOperationWithResult.execute(IndeterminateOperationWithResult.java:5)
at com.agilemind.commons.modules.concurrent.util.operations.Operation.executeOperation(Operation.java:124)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Последнее редактирование: