选择带有beautifulsoup的项目

时间:2017-06-13 14:49:18

标签: html css beautifulsoup css-selectors

我有以下结果列表:

<div id="resultlist" class="result-list ">
   <article itemscope="" itemtype="http://schema.org/Residence" class="search-result-entry  ">
   <article itemscope="" itemtype="http://schema.org/Residence" class="search-result-entry  ">
   <article class="search-result-entry" id="wh_adition_FakeAd1">
   <article itemscope="" itemtype="http://schema.org/Residence" class="search-result-entry  ">
...

使用beautifulsoup,我尝试选择“search-result-entry”类和itemtype =“http://schema.org/Residence”的所有条目。

response = requests.get(url)

#cancel parsing if page doesnt exists
if response.status_code is not 200:
    return

soup = bs4.BeautifulSoup(response.text, "lxml")
#print(soup.select("resultlist")

#select all listings from lise, execlude adds
results = soup.select('.search-result-entry')
print(results)

但是,目前我正在选择id="wh_adition_FakeAd1"的那些,这会在某些行之后给出一个索引错误。 我尝试了这个,没有任何结果:

results = soup.select('.search-result-entry meta[itemtype=http://schema.org/Residence]')

我知道如何才能设法选择我需要的条目吗?

1 个答案:

答案 0 :(得分:1)

你可以试试这个。查找具有所需项类型的所有文章标签。这将仅打印具有该属性的那些。

library(tidyr)
separate(df1, YYYYMMDD, into = c('Year', 'Month', 'Day'), sep=c(4, 6))
#   Year Month Day Number
#1 2002    01  01   0.21
#2 2002    01  02   0.34
#3 2002    01  03   1.22

你可以对那些有ID和ID

的人做同样的事情
for line in soup.findAll("article", {"itemtype" : "http://schema.org/Residence"}):
    print line

希望这有帮助。