2015-11-13 2 views
1

Im соскабливает страницу с помощью Kimono и Ive сталкивается с некоторыми данными, которые структурированы, как показано ниже.Использование регулярных выражений в селекторе css

Вопрос заключается в том, что все данные хранятся в элементе под названием <div class="agents-stats-seperator"> некоторые элементы имеют только один из этих элементов, некоторые из них до 4.

Существует различные данные по каждому из них, что им пытаются царапать и только структурированная разница между ними является текстом, либо:

  • жилой недвижимости на продажу:
  • жилой аренды:
  • Коммерческих для продажи:
  • Коммерческая аренда:

Im Кимоно у вас есть возможность определить, что вы хотите, чтобы выбрать либо путь CSS или регулярное выражение.

На данный момент им определения с ниже:

div > div > div > div.agents-stats-seperator > div /^()(.*?)()$/

Что вызывает вопрос, как он подбирая все <div class="agents-stats-seperator"> элементы, какие ив застрял на том, как установить регулярное выражение целевая элементы этого нужно просто, содержащего текст Residential for sale:

Ive пытался с помощью:

div > div > div > div.agents-stats-seperator > div [str="Residential to rent:"] /^()(.*?)()$/

Но безрезультатно, никаких идей?


Для справки здесь является фрагмент HTML-

<div class="clearfix top agents-stats bg-muted"> 


    <div class="agents-stats-seperator"> 
     <div class="agents-stats-l"> 

       Residential for sale: 

      <strong><a href="/for-sale/branch/1-click-homes-london-19269/">14</a></strong> 
     </div> 
     <div class="agents-stats-c"> 
     Avg. asking price: 
     <strong class="price">£447,143</strong> 
     </div> 
     <div class="agents-stats-r"> 
     Avg. sale listing age: 
       <span>18 weeks</span> 
     </div> 
    </div> 



    <div class="agents-stats-seperator"> 
     <div class="agents-stats-l"> 

      Residential to rent: 

      <strong><a href="/to-rent/branch/1-click-homes-london-19269/">9</a></strong> 
     </div> 
     <div class="agents-stats-c"> 
     Avg. asking rent: 
     <strong class="price">£1,660 pcm</strong> 
     </div> 
     <div class="agents-stats-r"> 
     Avg. rental listing age: 
       <span>3 weeks</span> 
     </div> 
    </div> 



    <div class="agents-stats-seperator"> 
     <div class="agents-stats-l"> 
      Commercial for sale 

      <strong><a href="/for-sale/commercial/branch/1-click-homes-london-19269/">1</a></strong> 
     </div> 
     <div class="agents-stats-c"> 
     Avg. asking price: 
     <strong class="price">£700,000</strong> 
     </div> 
     <div class="agents-stats-r"> 
     Avg. sale listing age: 
       <span>11 weeks</span> 
     </div> 
    </div> 



    <div class="agents-stats-seperator"> 
     <div class="agents-stats-l"> 

     Commercial to let 

      <strong><a href="/to-rent/commercial/branch/1-click-homes-london-19269/">1</a></strong> 

     </div> 
     <div class="agents-stats-c"> 
     Avg. asking rent: 
     <strong class="price">£22,516 pa</strong> 
     </div> 
     <div class="agents-stats-r"> 
     Avg. rental listing age: 
       <span>56 weeks</span> 
     </div> 
    </div> 


</div> 
+1

использования ': contains' – hjpotter92

+1

http://www.w3.org/TR/css3-selectors/# content-selectors – hjpotter92

+0

@ hjpotter92 ': contains' не существует. Он был предложен в 2001 году для CSS3, но был исключен из спецификации 4 года спустя. – bfontaine

ответ

0

Попробуйте что-то вроде:

div:nth-child(1).agents-stats-seperator > div:nth-child(1).agents-stats-l > strong > a