powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Помогите написать css селектор
33 сообщений из 33, показаны все 2 страниц
Помогите написать css селектор
    #39422627
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такой кусок страницы:

Код: html
1.
2.
3.
4.
<div class="detail-row">
                        <div class="item country font-light">Tracking number:</div>
                        <div class="item icon"></div>
                        <div class="item msg">1234567890</div>



Вот таких detail-row много.

Мне нужно добраться до <div class="item msg"> именно того <div class="detail-row"> в котором есть <div class="item country font-light"> с текстом Tracking number:

Возможно ли написать такой селектор, или только перебирать по одному?
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422645
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql,

есть CSS-селектор :has в черновиках, который нигде не работает. поэтому только как-то так:

https://jsfiddle.net/h35kv580/
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422646
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422649
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql,

да, добраться до итема:

https://jsfiddle.net/h35kv580/1/
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422652
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя http://jquery.page2page.ru/index.php5/Селектор_по_тексту

И чё?

https://developer.mozilla.org/en-US/docs/Web/CSS
https://www.w3schools.com/cssref/css_selectors.asp

Вот расово правильная документация. Но это ничем автору не поможет.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422658
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttИ чё?
$('div[class="item country font-light"]:contains("Tracking number:")').parent().html()
"
<div class="item country font-light">Tracking number:</div>
<div class="item icon"></div>
<div class="item msg">1234567890</div>
"
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422660
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt


Это я алиэкспресс мучаю, пытаюсь достать трек номера заказов. Т.е. уже достал таким вот селектором (скопировал из отладчика)

#J_Package0Content > div.physical-detail > div.consignment-detail-content > div:nth-child(1) > div.item.msg

Но боюсь если чтото на странице изменят, все сломается. (ИМХО вероятность что изменят тот блок, что в первом сообщении, меньше чем то что изменят например расположение блоков)

Ваш селектор селениум (с драйвером хрома) совсем никак есть не хочет, An invalid or illegal selector was specified

я его так записал:

.detail-row:has(.item.country.font-light:contains("Tracking number:")) > .item.msg

по сути только ">" добавил. пробовал еще div перед первыми точками написать - тоже самое :(
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422661
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Прочитай ещё раз задачу ТС внимательно. Посмотри моё решение по ссылке. Твои ссылка и приведённый код не решают задачу ТС. Как обычно в общем-то
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422665
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
$('div[class="item country font-light"]:contains("Tracking number:")').parent().find('div[class="item msg"]').html()
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422666
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql,

Надо было уточнить, что речь идёт о селениуме.

https://kreisfahrer.gitbooks.io/selenium-webdriver/content/webdriver_api_slozhnie_vzaimodeistviya/lokatori_css,_xpath,_jquery.html

Посмотри про jQuery локаторы. Стандартный базовый локатор по CSS не умеет всего того, что умеет jQuery локатор. Ещё можно попробовать на XPath что-нибудь соорудить.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422668
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяhVostt,
$('div[class="item country font-light"]:contains("Tracking number:")').parent().find('div[class="item msg"]').html()

Не корректно. Парент должен быть .detail-row, где у тебя такой фильтр?
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422670
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНе корректно. Парент должен быть .detail-row, где у тебя такой фильтр?
$('div[class="item country font-light"]:contains("Tracking number:")').parent('.detail-row').find('div[class="item msg"]').html()
"1234567890"
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422671
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt
селениум позволяет выполнить произвольный JS код в контексте страницы, можно копать в этом направлении.

Только как понимать:
"есть CSS-селектор :has в черновиках, который нигде не работает."?

Вы же в примере его и используете...
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422687
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя$('div[class="item country font-light"]:contains("Tracking number:")').parent('.detail-row').find('div[class="item msg"]').html()
"1234567890"

Долго же пришлось добиваться от тебя решения именно поставленной задачи ))))
И странно видеть такое кривое, крайне медленное и оптимальное решение видеть от человека, который только недавно всеми силами упирался и топил за супер сверх-супер-пупер-мега производительные решения.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422688
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlТолько как понимать:
"есть CSS-селектор :has в черновиках, который нигде не работает."?

Вы же в примере его и используете...

Это селектор, которые понимает jQuery, и когда браузеры станут его поддерживать, jQuery будет использовать нативные средства.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422698
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttвадя$('div[class="item country font-light"]:contains("Tracking number:")').parent('.detail-row').find('div[class="item msg"]').html()
"1234567890"

Долго же пришлось добиваться от тебя решения именно поставленной задачи ))))
И странно видеть такое кривое, крайне медленное и оптимальное решение видеть от человека, который только недавно всеми силами упирался и топил за супер сверх-супер-пупер-мега производительные решения.


я превоначально показал основу. дал повод тс для размышления.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422701
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
использование jQuery само по себе подразумевает кучу лишнего кода, и не факт, что твой вариант будет быстрее. не известно, что скрывается под парсингом сраки условий выбора в твоём и моём вариаттах
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422702
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
строки. :)
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422793
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяhVostt,
использование jQuery само по себе подразумевает кучу лишнего кода

Ты заявляешь абсолютную чушь и откровенную ложь. jQuery и другие подобные библиотеки изначально были созданы с целью уменьшить количество лишнего, повторяющегося кода. Размер кода с применением jQuery будет меньше, он будет чище, понятнее, универсальнее, поддерживать фичи, которые ещё не реализованы в некоторых браузерах, или реализованы по-разному, чем "чистый код".

Я не то, чтобы дикий фанат jQuery, и в целом считаю, что разработчик должен уметь работать на чистом ванильном JS и понимать, как всё устроено и работает, но ты говоришь просто феерические глупости.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422819
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlМне нужно добраться до <div class="item msg"> именно того <div class="detail-row"> в котором есть <div class="item country font-light"> с текстом Tracking number:

Возможно ли написать такой селектор, или только перебирать по одному?
Есть такой селектор!
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
	$('.detail-row > .item.country.font-light:contains("Tracking number:") + .item.icon + .item.msg').each(function(){
		alert($(this).text());
	});
});
</script>
</head>
<body>
<div class="detail-row">
	<div class="item country font-light">Tracking number:</div>
	<div class="item icon"></div>
	<div class="item msg">0</div>
</div>
<div class="detail-row">
	<div class="item country">Tracking number:</div>
	<div class="item icon"></div>
	<div class="item msg">1</div>
</div>
<div class="detail-row">
	<div class="item country font-light">Other:</div>
	<div class="item icon"></div>
	<div class="item msg">2</div>
</div>
<div class="detail-row">
	<div class="item country font-light">Tracking number:</div>
	<div class="item icon"></div>
	<div class="item msg">3</div>
</div>
</body>
</html>


Выбираются как раз 2 таких варианта...
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422822
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql , но класс item , в твоем варианте, вообще лишен смысла... Можно обойтись и без него.
Он только помехи создает...
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422828
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
.detail-row > .item.country.font-light + .icon + .msg
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422830
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttТы заявляешь абсолютную чушь и откровенную ложь. jQuery и другие подобные библиотеки изначально были созданы с целью уменьшить количество лишнего, повторяющегося кода. Размер кода с применением jQuery будет меньше, он будет чище, понятнее, универсальнее, поддерживать фичи, которые ещё не реализованы в некоторых браузерах, или реализованы по-разному, чем "чистый код".
то что с использованием jquery кода собственного проекта будет меньше, код будет читабельнее -не спорю
но ты посмотри что делает код самого jquery - там дофига лишнего, нужного только для кроссбраузерности и для универсальности. и этот код будет выполняться всегда. поэтому об увеличении скорости выполнения , сравнения наших вариантов- нет речи.
кода задаётся такая строка
$('.detail-row:has(.item.country.font-light:contains(Tracking number:))')
или такая
$('div[class="item country font-light"]:contains("Tracking number:")').parent('.detail-row').find('div[class="item msg"]').html()
первоначально на должна быть разобрана - а это время. и не известно, который вариант быстрее.
поэтому использование того или иного варианта - дело вкуса.
и при разовом использовании поймать выгоду очень сомнительно.
поэтому твои высказывания 20311545 просто высказывания обиженного ребёнка из-за того , что кто-то предложил ещё вариант :)
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422837
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя, если не разбираться в том, как работает та, или иная библиотека, то да, будет так, как ты пишешь :)
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422838
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,
а на чистом js?
заменить вот это contains наиболее просто....
чисто для развития и спортивного интереса.
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422843
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAвадя, если не разбираться в том, как работает та, или иная библиотека, то да, будет так, как ты пишешь :)
пока вопрос в разбирательстве не стоит :)
а если копаться и разбираться - много времени уйдёт....
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422860
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяа на чистом js?
Так сейчас есть
Код: javascript
1.
obj.querySelector[All](...);


Т.ч. и на "чистом js" работают все те же селекторы...
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422864
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя, да нет, не много, это же не rocket science :) но зависит от индивидуальных качеств
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422888
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaвадяа на чистом js?
Так сейчас есть
Код: javascript
1.
obj.querySelector[All](...);



Т.ч. и на "чистом js" работают все те же селекторы...
но мне не удалось contains найти как использовать...
плохо искал?
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422914
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяно мне не удалось contains найти как использовать...
плохо искал?
Я не совсем понял вопрос...

Вот описание селектора contains.
http://basicweb.ru/jquery/jquery_sel_contains.php
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422921
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaВот описание селектора contains.
C jquery всё понятно, а вот на чистом js ?
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422924
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяC jquery всё понятно, а вот на чистом js ?
Селектор он и в Африке селектор.
Значит будет так же работать в нативных методах querySelector|querySelectorAll...
...
Рейтинг: 0 / 0
Помогите написать css селектор
    #39422933
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaвадяC jquery всё понятно, а вот на чистом js ?
Селектор он и в Африке селектор.
Значит будет так же работать в нативных методах querySelector|querySelectorAll...
а вот фигфам
https://www.w3.org/TR/css3-selectors/#content-selectors
...
Рейтинг: 0 / 0
33 сообщений из 33, показаны все 2 страниц
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Помогите написать css селектор
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]