<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: получение элементов из facebook, chrome.ahk]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=16051&amp;type=atom" />
	<updated>2021-02-05T16:04:28Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=16051</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145889#p145889" />
			<content type="html"><![CDATA[<p>Идеально, это многое объясняет. Люблю когда паззл складывается, спасибо <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T16:04:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145889#p145889</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145888#p145888" />
			<content type="html"><![CDATA[<p>События могут &quot;<a href="https://learn.javascript.ru/bubbling-and-capturing">всплывать</a>&quot;.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-02-05T15:56:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145888#p145888</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145887#p145887" />
			<content type="html"><![CDATA[<p>Все разобрался. Хотя получилось странно. <br />Убрал события предков, <strong>вариант 1:</strong><br />Ивент оказался только у родительского элемента. При чем с таким классом нашлось 40+ элементов. Отсеял лишнее и получилось кликнуть на нужное.<br /><a href="https://imgbb.com/"><span class="postimg"><img src="https://i.ibb.co/1zSy7bG/error.jpg" alt="https://i.ibb.co/1zSy7bG/error.jpg" /></span></a></p><br /><p>Убрал события предков, <strong>вариант 2:</strong><br />У элемента не показывало вообще ивентов, однако точечно получилось кликнуть, почему ? Ведь ивентов не показывало.<br /><a href="https://imgbb.com/"><span class="postimg"><img src="https://i.ibb.co/Gs5yTgy/error2.jpg" alt="https://i.ibb.co/Gs5yTgy/error2.jpg" /></span></a><br /></p><div class="codebox"><pre><code>
document.querySelector(&#039;span.a2odkss1.elqgv22k.pq6dq46d&#039;).click();
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T15:54:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145887#p145887</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145875#p145875" />
			<content type="html"><![CDATA[<p>Ну, сейчас на скриншоте у вас обработчики событий не этого элемента, а всех его предков (там галочка в самом верху), не факт, что если все перечисленные там события произойдут на данном элементе, то они будут обработаны. Но конкретно click на нём действительно есть, я просто не на тот элемент посмотрел.<br />Так и на фейсбуке на кнопке «Нравится» такой же список есть. Просто уберите галку с «Предки» (по-английски возможно ancestors), и идите вверх по дереву, пока не появится обработка click.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-02-05T14:15:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145875#p145875</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145873#p145873" />
			<content type="html"><![CDATA[<p>У любого инпута или кнопки, должен же быть обработчик. Тут нет вложенных блоков и т.д., один единственный инпут, один класс и такое же событие. <br /><a href="https://ibb.co/mbQCf2N"><span class="postimg"><img src="https://i.ibb.co/2WX7GCZ/error.jpg" alt="https://i.ibb.co/2WX7GCZ/error.jpg" /></span></a></p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T14:03:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145873#p145873</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145871#p145871" />
			<content type="html"><![CDATA[<p>А как вы на странице гугла определили, что событие click обрабатывается этим элементом?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-02-05T13:54:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145871#p145871</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145869#p145869" />
			<content type="html"><![CDATA[<p>Ивенты - это события, которые обрабатывают команды через функции. Например, есть поле ввода &lt;input&gt;. Чтобы он реагировал на поведение мышки, когда пользователь наводит на это поле, нужно обработать событие &quot;onmousemove&quot; и в функции описать как это будет работать. А потом можно будет обратиться к этому ивенту через .mousemove(). <br />В моём случае, на кнопке &quot;лайк&quot;, должен же быть ивент onclick, чтобы я мог обратиться к нему через .click(). Но я не могу найти этот ивент, а значит я не знаю к чему должен обратиться. </p><p>Взять например гугл. <a href="https://www.google.com/webhp?hl=ru&amp;sa=X&amp;ved=0ahUKEwj7pOeP69LuAhWXHewKHQ5wARQQPAgI">https://www.google.com/webhp?hl=ru&amp; … 5wARQQPAgI</a><br />Есть элемент и есть его ивент, а значит можно обратиться и выполнить команду, клик:<br /></p><div class="codebox"><pre><code>
&lt;input class=&quot;gNO89b&quot; value=&quot;Поиск в Google&quot; aria-label=&quot;Поиск в Google&quot; name=&quot;btnK&quot; type=&quot;submit&quot; data-ved=&quot;0ahUKEwiJt4_m69LuAhVV6uAKHfkfDMAQ4dUDCAs&quot;&gt;

document.querySelector(&#039;input.gNO89b&#039;).click();
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T13:30:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145869#p145869</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145864#p145864" />
			<content type="html"><![CDATA[<p>Не совсем уверен, что вы понимаете под ивентами?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-02-05T13:10:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145864#p145864</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145863#p145863" />
			<content type="html"><![CDATA[<p>На <a href="https://www.w3schools.com/">https://www.w3schools.com/</a>. Проверил, перепутал с querySelector, там можно передавать тег. Но даже если изменить, как правильно в браузере для FB можно посмотреть где прописан нужный мне ивент? Что бы я знал конечную цель, к какой мне нужно будет обращаться через js.</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T12:50:45Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145863#p145863</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145862#p145862" />
			<content type="html"><![CDATA[<p>Это где вы такое прочитали?</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-02-05T12:36:07Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145862#p145862</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145861#p145861" />
			<content type="html"><![CDATA[<p><strong>teadrinker</strong> Да, вроде кроме имени класса можно передавать к какому тегу это будет относиться, для более точного поиска. object.getElementsByClassName(&quot;tag.class&quot;)</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T12:22:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145861#p145861</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145859#p145859" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Botsy пишет:</cite><blockquote><div class="codebox"><pre><code>document.getElementsByClassName(&#039;span ...</code></pre></div></blockquote></div><p>span — это не className, это название тега.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-02-05T12:01:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145859#p145859</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145857#p145857" />
			<content type="html"><![CDATA[<p>В 7 строке можно было оставить так: &quot;div.load360614&quot; и всё равно работало бы. Т.к. это точный класс дива, он всего один и ему принадлежит всего 1 элемент button, но не суть.<br />Про талмуд обучения я в курсе, логично как бы, а вот что есть приложения на странице вместо статики - не знал. Поэтому я и не смог достать нужный элемент, походу способы отличаются. Даже через консоль, как достать нужный элемент на фб, если там приложение, а не статика ? <br />Проверял массив через GetElementByClass, на других сайтах содержит развернутую информацию, а тут нет.<br /></p><div class="codebox"><pre><code>
document.getElementsByClassName(&#039;span d2edcug0 hpfvmrgz qv66sw1b c1et5uql rrkovp55 a8c37x1j keod5gw0 nxhoafnm aigsh9s9 d3f4x2em fe6kdd0r mau55g9w c8b282yb iv3no6db jq4qci2q a3bd9o3v lrazzd5p m9osqain&#039;);

HTMLCollection []
length: 0
__proto__: HTMLCollection
item: ƒ item()
length: (...)
namedItem: ƒ namedItem()
constructor: ƒ HTMLCollection()
Symbol(Symbol.iterator): ƒ values()
Symbol(Symbol.toStringTag): &quot;HTMLCollection&quot;
get length: ƒ length()
__proto__: Object
</code></pre></div><p><a href="https://ibb.co/JpZg3hc"><span class="postimg"><img src="https://i.ibb.co/mypgNxR/error.jpg" alt="https://i.ibb.co/mypgNxR/error.jpg" /></span></a></p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T11:51:00Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145857#p145857</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145849#p145849" />
			<content type="html"><![CDATA[<p>Набираете в гугле &quot;css селекторы&quot; и читаете гайды от мозиллы, или лёрн.джаваскрипт.</p><p>У Вас в 7 строке первого примера, клик сообщается ноду с тегом &quot;cxmmr5t8&quot;, который может быть любым потомком нода с тегом &quot;o9v6fnle&quot;, который может быть любым потомком нода с тегом &quot;load360614&quot;, который может быть любым потомком любого &quot;div&quot;. Соответственно всех тегов, кроме &quot;div&quot; — не существует. Тогда кому сообщается клик?</p><p>Набираете в гугле &quot;браузер консоль разработчика&quot; и читаете гайды от оных же, как пользоваться консолью.</p><p>Ко всему прочему, сейчас довольно распространённая практика писать не сайты, а разворачивать приложения на странице. Время статичных страничек давно стало историей. Все популярные соц. сети вроде FB используют модульные системы разработки для таких приложений, так как они позволяют сильно упростить разработку этих приложений. Это в свою очередь накладывает свои особенности на поведение страниц. Если собираетесь взаимодействовать с таким контентом, может оказаться сильно полезным узнать, что у таких фреймворков &quot;под капотом&quot;.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2021-02-05T05:19:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145849#p145849</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: получение элементов из facebook, chrome.ahk]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145848#p145848" />
			<content type="html"><![CDATA[<p>Как правильно получить элемент со страницы ФБ (лайк, комментарий, поделиться) и работать с ним? На других сайтах как бы &quot;открытая&quot; html страница, а на ФБ всё запаковано в script. На других сайтах просмотрев код страницы, можно найти нужный html элемент(его id, class, связанные для них ивенты и т.д.), а на фб элемент находит, а ивенты нет.</p><p>Использую биб. chrome.ahk, для манипуляции с содержимым HTML DOM. Рабочий пример для клика по первому найденно-заданному элементу:<br /></p><div class="codebox"><pre><code>
#Include Chrome.ahk

DarkS_page := Chrome.GetPage()
DarkS_js = 
(
document.querySelector(&#039;div load360614 o9v6fnle cxmmr5t8&#039;).click();
)

page.Evaluate(DarkS_js)

return
F12::ExitApp
</code></pre></div><p>Например эта страница и кнопка лайка, да и вообще любая страница и активность на ней <a href="https://www.facebook.com/DMENDEFENDERS/photos/a.361013394560176/408032936524888">https://www.facebook.com/DMENDEFENDERS/ … 2936524888</a>.<br /><a href="https://imgbb.com/"><span class="postimg"><img src="https://i.ibb.co/LvYB5zq/image.png" alt="https://i.ibb.co/LvYB5zq/image.png" /></span></a></p><p>Блок &quot;нравится&quot;:<br /></p><div class="codebox"><pre><code>
div rq0escxv l9j0dhe7 du4w35lb j83agx80 cbu4d94t g5gj957u d2edcug0 hpfvmrgz rj1gh0hx buofh1pr n8tt0mok hyh9befq iuny7tx3 ipjc6fyt
</code></pre></div><p>У всех связанных блоков, не работают ивенты. Ошибка, что их как бы и нет.</p>]]></content>
			<author>
				<name><![CDATA[Botsy]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=41069</uri>
			</author>
			<updated>2021-02-05T01:55:45Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145848#p145848</id>
		</entry>
</feed>
