我有无元素的问题,我补充说,为了测试这个,但它仍然不起作用:
Set-CalendarProcessing -Identity "Meeting Room Name" -BookingWindowInDays "1080"
错误:
soup = BeautifulSoup(htmlpage, "lxml")
element = soup.find(None, "div", class_='12345').find('a')
if element is not None:
print "Your element is: " + element.text
else:
print "No element"
答案 0 :(得分:1)
您正在执行两次查找呼叫:
element = soup.find(None, "div", class_='12345').find('a')
第一次调用失败,失败是因为您在那里查找错误的内容,您正在传递None
作为标记名,"div"
作为属性映射。它永远不会工作,因此总是返回None
,并且该对象没有.find
属性。
您需要修复呼叫,并在尝试查找嵌套div
标记之前测试是否找到了a
:
element = None
parent = soup.find("div", class_='12345')
if parent is not None:
element = parent.find('a')
我不会那么复杂,但我使用CSS selector代替soup.select_one()
方法:
element = soup.select_one('div.12345 a')
if element is not None:
# ...
CSS选择器将返回第一个a
元素,该元素是具有类div
的{{1}}标记的子元素。