<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=14236</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=14236&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK : Сократить текст отправляемого запроса WinHTTP».]]></description>
		<lastBuildDate>Tue, 16 Oct 2018 20:09:37 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129274#p129274</link>
			<description><![CDATA[<p><strong>kangar</strong>, объясните словами, что вы хотите получить.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 16 Oct 2018 20:09:37 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129274#p129274</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129260#p129260</link>
			<description><![CDATA[<p><strong>teadrinker</strong> Да, никак. У них api есть только для фото. Тут нужно весь код переписывать, чтобы сделать как я хотел. (Пост № 26 и далее)<br />Спасибо за помощь и хорошие примеры.</p>]]></description>
			<author><![CDATA[null@example.com (kangar)]]></author>
			<pubDate>Mon, 15 Oct 2018 18:13:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129260#p129260</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129259#p129259</link>
			<description><![CDATA[<div class="quotebox"><cite>kangar пишет:</cite><blockquote><p>Напрашивается вопрос - какую ссылку использовать для парса &quot;src=&quot; ?</p></blockquote></div><p>Надеюсь, вопрос риторический? <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Мне разработчики сайта не сообщали.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 15 Oct 2018 18:11:46 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129259#p129259</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129258#p129258</link>
			<description><![CDATA[<p><strong>teadrinker</strong> Действительно, нет никакого unknow. НО!<br />Выдаёт пустое значение и с загруженной фотографией. Это происходит из-за того, что я вызываю не ту страницу. Один из первых кодов что вы скинули(Пост #25) загружает картинку через api сайта(https://www.betafaceapi.com/api/v2/media), не заметив этого я начал открывать новую страницу (http://betaface.com/demo.html) из-за чего фотография пропадает.<br />Напрашивается вопрос - какую ссылку использовать для парса &quot;src=&quot; ?<br />Перейдя по ссылке api выдаёт пустую страницу и </p><div class="codebox"><pre><code>{
  &quot;error_code&quot;: -1,
  &quot;error_description&quot;: &quot;invalid api key or secret&quot;
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (kangar)]]></author>
			<pubDate>Mon, 15 Oct 2018 18:03:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129258#p129258</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129257#p129257</link>
			<description><![CDATA[<div class="quotebox"><cite>kangar пишет:</cite><blockquote><p>Если её нет, должно выдать unknow</p></blockquote></div><p>Не знаю, мне такой html приходит:</p><p><span class="postimg"><img src="https://i.imgur.com/9wqdVQf.png" alt="https://i.imgur.com/9wqdVQf.png" /></span></p><p>Никакого «unknow», как видите. Сохраните ResponseText в буфер обмена, откройте в блокноте.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 15 Oct 2018 16:30:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129257#p129257</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129256#p129256</link>
			<description><![CDATA[<p><strong>teadrinker</strong> <br />Пробую с вашим куском кода - выдает нужный текст. (&quot;этот текст нам нужно найти&quot;)<br />Загружаю страницу просто без картинки (Если её нет, должно выдать unknow)<br /></p><div class="codebox"><pre><code>oWhr.Open(&quot;GET&quot;, &quot;http://betaface.com/demo.html&quot;, false)
oWhr.Send() 
MsgBox % oWhr.ResponseText()
html := oWhr.ResponseText
RegExMatch(html, &quot;&lt;img id=&quot;&quot;search_original_image&quot;&quot;.+?src=&quot;&quot;\K[^&quot;&quot;]+&quot;, src)
MsgBox, % src1
</code></pre></div><p> - пусто.</p>]]></description>
			<author><![CDATA[null@example.com (kangar)]]></author>
			<pubDate>Mon, 15 Oct 2018 16:05:58 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129256#p129256</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129255#p129255</link>
			<description><![CDATA[<p>А почему вы решили, что она там есть? Потому, что видите её на экране?<br />Вот смотрите:<br /></p><div class="codebox"><pre><code>html =
(

                  &lt;div&gt;
                    &lt;!-- Slider --&gt;
                      &lt;div class=&quot;row box&quot;&gt;
                            &lt;img id=&quot;search_original_image&quot; class=&quot;img-responsive&quot; src=&quot;этот текст нам нужно найти&quot;&gt;
                            &lt;span class=&quot;text-center&quot;&gt;Original Face&lt;/span&gt;
                      &lt;/div&gt;
                      &lt;div class=&quot;loading&quot; id=&quot;search_loading&quot; style=&quot;    position: relative;top: 57px;margin-bottom: 124px;&quot;&gt;&lt;/div&gt;

                      &lt;div id=&quot;search_text_result&quot; style=&quot;color: #e51837;font-size: 18px;text-align: center;display: none;&quot;&gt;&lt;/div&gt;
                      &lt;div class=&quot;row&quot; id=&quot;search_result_section&quot; style=&quot;&quot;&gt;
                          &lt;div id=&quot;content-2&quot; class=&quot;content&quot;&gt;
                              &lt;ul&gt;
                              &lt;/ul&gt;
                          &lt;/div&gt;
                     &lt;/div&gt;
                  &lt;/div&gt;
)
RegExMatch(html, &quot;&lt;img id=&quot;&quot;search_original_image&quot;&quot;.+?src=&quot;&quot;\K[^&quot;&quot;]+&quot;, src)
MsgBox, % src </code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 15 Oct 2018 14:56:57 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129255#p129255</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129254#p129254</link>
			<description><![CDATA[<p><strong>teadrinker</strong> Нет. Это я просто показал, как устроена страница с картинкой и без неё.</p>]]></description>
			<author><![CDATA[null@example.com (kangar)]]></author>
			<pubDate>Mon, 15 Oct 2018 10:50:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129254#p129254</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129253#p129253</link>
			<description><![CDATA[<p>Я не совсем понял, вы пытаетесь найти картинку, которой нет?</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 15 Oct 2018 09:35:33 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129253#p129253</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129252#p129252</link>
			<description><![CDATA[<p><strong>teadrinker</strong> Должно, да не нашло:<br />Вот весь путь к картинке:<br /><a href="http://uploads.ru/hrJom.png"><span class="postimg"><img src="http://s5.uploads.ru/t/hrJom.png" alt="http://s5.uploads.ru/t/hrJom.png" /></span></a><br />Как это выглядит без картинки:<br /><a href="http://uploads.ru/HJQpj.png"><span class="postimg"><img src="http://sd.uploads.ru/t/HJQpj.png" alt="http://sd.uploads.ru/t/HJQpj.png" /></span></a></p>]]></description>
			<author><![CDATA[null@example.com (kangar)]]></author>
			<pubDate>Mon, 15 Oct 2018 09:29:23 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129252#p129252</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129249#p129249</link>
			<description><![CDATA[<p>Так должно найтись:<br /></p><div class="codebox"><pre><code>RegExMatch(html, &quot;&lt;img id=&quot;&quot;search_original_image&quot;&quot;.+?src=&quot;&quot;\K[^&quot;&quot;]+&quot;, src)
MsgBox, % src</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sun, 14 Oct 2018 21:19:55 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129249#p129249</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129248#p129248</link>
			<description><![CDATA[<p><strong>teadrinker</strong> Спасибо большое за код.<br />Если разрешите, задам вопрос немного уходящий от темы (не хочу создавать новую тему для этого)<br /></p><div class="codebox"><pre><code>html := oWhr.ResponseText
RegExMatch(html, &quot;div class=&quot;&quot;row box&quot;&quot;&gt;&lt;img.*&gt; src=(.*?)&quot;, arc)
MsgBox, % arc1</code></pre></div><p><a href="http://uploads.ru/JwL1Z.png"><span class="postimg"><img src="http://sg.uploads.ru/t/JwL1Z.png" alt="http://sg.uploads.ru/t/JwL1Z.png" /></span></a><br />Я хочу вытащить картинку со страницы, а точнее её вид в base64.<br />Этот код находится вот src=&quot;тут&quot; Пробую вытащить через регулярку - не выходит. <br />По поводу закрытия &lt;/img&gt; и &lt;/div&gt; -&nbsp; Scrite4Autohotkey светит синтаксис, я что-то упустил.<br /><a href="http://uploads.ru/s6IMT.png"><span class="postimg"><img src="http://s8.uploads.ru/t/s6IMT.png" alt="http://s8.uploads.ru/t/s6IMT.png" /></span></a></p>]]></description>
			<author><![CDATA[null@example.com (kangar)]]></author>
			<pubDate>Sun, 14 Oct 2018 20:34:52 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129248#p129248</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129235#p129235</link>
			<description><![CDATA[<p>Хах, точно, он там открытым текстом записан. Тогда так:<br /></p><div class="codebox"><pre><code>; upload file to https://betaface.com/demo.html

FileSelectFile, filePath,, %A_ScriptDir%, Выберите файл изображения, Изображения (*.gif; *.ti*f; *.jp*g; *.png; *.bmp)
if !filePath
   Return

oWhr := ComObjCreate(&quot;WinHttp.WinHttpRequest.5.1&quot;)
oWhr.Open(&quot;GET&quot;, &quot;http://betaface.com/demo.html&quot;, false)
oWhr.Send()
if (oWhr.Status != 200 || !RegExMatch(oWhr.ResponseText, &quot;&#039;api_key&#039;:\s&#039;\K.+?(?=&#039;)&quot;, api_key))  {
   MsgBox, Fail
   Return
}
oFile := FileOpen(filePath, &quot;r&quot;, &quot;cp0&quot;)
size := oFile.RawRead(buff, oFile.length())
oFile.Close()
base64 := CryptBinaryToStringBASE64(&amp;buff, size, true)

JSON := &quot;{&#039;api_key&#039;:&#039;&quot;     . api_key . &quot;&#039;,&quot;
       . &quot;&#039;detection_flags&#039;:&#039;cropface,recognition,content,classifiers,basicpoints,propoints&#039;,&quot;
       . &quot;&#039;file_base64&#039;:&#039;&quot; . base64 . &quot;&#039;}&quot;
       
headers := { &quot;Content-Type&quot;:   &quot;application/json&quot;
           , &quot;Content-Length&quot;:  StrLen(JSON)
           , &quot;Connection&quot;:     &quot;keep-alive&quot;
           , &quot;Referer&quot;:        &quot;https://betaface.com/demo.html&quot;
           , &quot;User-Agent&quot;:     &quot;Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko&quot; }
           
oWhr.Open(&quot;POST&quot;, &quot;https://www.betafaceapi.com/api/v2/media&quot;, false)
for k, v in headers
   oWhr.SetRequestHeader(k, v)
oWhr.Send(JSON)
MsgBox, % JSON := oWhr.ResponseText

CryptBinaryToStringBASE64(pData, bytes, NOCRLF = &quot;&quot;)
{
   static CRYPT_STRING_BASE64 := 1, CRYPT_STRING_NOCRLF := 0x40000000
   CRYPT := CRYPT_STRING_BASE64 | (NOCRLF ? CRYPT_STRING_NOCRLF : 0)
   
   DllCall(&quot;Crypt32\CryptBinaryToString&quot;, Ptr, pData, UInt, bytes, UInt, CRYPT, Ptr, 0, UIntP, chars)
   VarSetCapacity(outData, chars &lt;&lt; !!A_IsUnicode)
   DllCall(&quot;Crypt32\CryptBinaryToString&quot;, Ptr, pData, UInt, bytes, UInt, CRYPT, Str, outData, UIntP, chars)
   Return outData
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sun, 14 Oct 2018 00:59:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129235#p129235</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129234#p129234</link>
			<description><![CDATA[<p>Ну его можно проверять на <a href="http://betaface.com/demo.html">http://betaface.com/demo.html</a>.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sun, 14 Oct 2018 00:03:15 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129234#p129234</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK : Сократить текст отправляемого запроса WinHTTP]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=129226#p129226</link>
			<description><![CDATA[<p>Не мучайтесь. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br /></p><div class="codebox"><pre><code>FileSelectFile, filePath,,, Выберите файл изображения, Изображения (*.gif; *.tif; *.tiff; *.jpg; *.jpeg; *.png; *.bmp)
if !filePath
   Return

oFile := FileOpen(filePath, &quot;r&quot;, &quot;cp0&quot;)
size := oFile.RawRead(buff, oFile.length())
oFile.Close()
base64 := CryptBinaryToStringBASE64(&amp;buff, size, true)
obj := { api_key:         &quot;d45fd466-51e2-4701-8da8-04351c872236&quot;
       , detection_flags: &quot;cropface,recognition,content,classifiers,basicpoints,propoints&quot;
       , file_base64:     base64 }
JSON := json_fromobj(obj)

oWhr := ComObjCreate(&quot;WinHttp.WinHttpRequest.5.1&quot;)
oWhr.Open(&quot;POST&quot;, &quot;https://www.betafaceapi.com/api/v2/media&quot;, false)

oWhr.SetRequestHeader(&quot;Content-Type&quot;, &quot;application/json&quot;)
oWhr.SetRequestHeader(&quot;Content-Length&quot;, StrLen(JSON))
oWhr.SetRequestHeader(&quot;Connection&quot;, &quot;keep-alive&quot;)
oWhr.SetRequestHeader(&quot;Referer&quot;, &quot;https://betaface.com/demo.html&quot;)
oWhr.SetRequestHeader(&quot;User-Agent&quot;, &quot;Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko&quot;)
oWhr.Send(JSON)
MsgBox, % JSON := oWhr.ResponseText

CryptBinaryToStringBASE64(pData, bytes, NOCRLF = &quot;&quot;)
{
   static CRYPT_STRING_BASE64 := 1, CRYPT_STRING_NOCRLF := 0x40000000
   CRYPT := CRYPT_STRING_BASE64 | (NOCRLF ? CRYPT_STRING_NOCRLF : 0)
   
   DllCall(&quot;Crypt32\CryptBinaryToString&quot;, Ptr, pData, UInt, bytes, UInt, CRYPT, Ptr, 0, UIntP, chars)
   VarSetCapacity(outData, chars &lt;&lt; !!A_IsUnicode)
   DllCall(&quot;Crypt32\CryptBinaryToString&quot;, Ptr, pData, UInt, bytes, UInt, CRYPT, Str, outData, UIntP, chars)
   Return outData
}

json_fromobj(obj)  {
   if IsObject( obj )  {
      isArray := true
      for key in obj
         if !( key = A_Index || isArray := false )
            break
         
      for k, v in obj
         str .= ( A_Index = 1 ? &quot;&quot; : &quot;,&quot; ) . ( isArray ? &quot;&quot; : json_fromobj(k) . &quot;:&quot; ) . json_fromobj(v)

      return isArray ? &quot;[&quot; str &quot;]&quot; : &quot;{&quot; str &quot;}&quot;
   }
   else if !(obj*1 = &quot;&quot; || RegExMatch(obj, &quot;\s&quot;))
      return obj
   
   for k, v in [[&quot;\&quot;, &quot;\\&quot;], [A_Tab, &quot;\t&quot;], [&quot;&quot;&quot;&quot;, &quot;\&quot;&quot;&quot;], [&quot;/&quot;, &quot;\/&quot;], [&quot;`n&quot;, &quot;\n&quot;], [&quot;`r&quot;, &quot;\r&quot;], [Chr(12), &quot;\f&quot;], [Chr(08), &quot;\b&quot;]]
      obj := StrReplace( obj, v[1], v[2] )
   
   while RegexMatch( obj, &quot;[^\x20-\x7e]&quot;, key )  {
      str := Asc( key )
      val := &quot;\u&quot; . Chr( ( ( str &gt;&gt; 12 ) &amp; 15 ) + ( ( ( str &gt;&gt; 12 ) &amp; 15 ) &lt; 10 ? 48 : 55 ) )
            . Chr( ( ( str &gt;&gt; 8 ) &amp; 15 ) + ( ( ( str &gt;&gt; 8 ) &amp; 15 ) &lt; 10 ? 48 : 55 ) )
            . Chr( ( ( str &gt;&gt; 4 ) &amp; 15 ) + ( ( ( str &gt;&gt; 4 ) &amp; 15 ) &lt; 10 ? 48 : 55 ) )
            . Chr( ( str &amp; 15 ) + ( ( str &amp; 15 ) &lt; 10 ? 48 : 55 ) )
      obj := StrReplace(obj, key, val)
   }
   Return &quot;&quot;&quot;&quot; obj &quot;&quot;&quot;&quot;
}</code></pre></div><p>Там, правда, есть значение ключа — api_key: &quot;d45fd466-51e2-4701-8da8-04351c872236&quot; — не уверен, что оно постоянное.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sat, 13 Oct 2018 19:57:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=129226#p129226</guid>
		</item>
	</channel>
</rss>
