在 selenium python 中获取多个特定标签
Getting multiple specific tags in selenium python
我有一个正在 抓取 的网页,并且有多个这样的标签:
<div ng-repeat-end="" class="default-group term-" ng-class="{
'course-converting': (!baseCourses.isCourseConversionComplete(cm.course) && !cm.course.ui.showConversionInProgress),
'last-item': $last
}" ng-init="baseCourses.patchData(cm)">
<bb-base-course-card ng-class="::{'first': baseCourses.isFirstNonFavorite(cm, term).ui.isNeedCreateFTUE}" membership="cm" term="term" delegated-api="baseCourses"><!-- If internal course -->
<!----><div ng-if="!membership.course.ui.isExternal" class="element-card course-element-card highlight pointer bar js-course-details child-is-invokable course-color-5" data-course-id="_6138_1" bb-click-to-invoke-child="a.course-title" stop-propagation="true" ng-hide="pinned" ng-class="{
'inactive-link': !membership.course.canAccess() || baseCourses.isSetToUltraCourse(membership.course),
'js-complete': membership.course.isComplete(),
'js-updating-conversion-status': membership.course.ui.isUpdatingConversionStatus || baseCourses.isSetToUltraCourse(membership.course),
'js-conversion-in-progress': membership.course.ui.showConversionInProgress,
'show-focus-outline': baseCourses.isFocusedCourse(membership.course.id),
'set-to-ultra-course': baseCourses.isSetToUltraCourse(membership.course)
}" tabindex="-1" id="course-list-course-_6138_1">
我要的是'bb-base-course-card'标签下div的'data-course-id'。 (在最后一个标签 'id' 中也是可行的,但在 'course-list-course-' 之后连接。我也可以使用它。)
有人可以帮忙吗???
您可以只使用这个 CSS 选择器来获得那个 div 吗?
bb-base-course-card > div
我解决了
for item in page.find_elements_by_xpath('//*[@class="default-group term-"]'):
link.append(item.find_element_by_css_selector('bb-base-course-card > div').get_attribute('data-course-id'))
还是谢谢你。
我有一个正在 抓取 的网页,并且有多个这样的标签:
<div ng-repeat-end="" class="default-group term-" ng-class="{
'course-converting': (!baseCourses.isCourseConversionComplete(cm.course) && !cm.course.ui.showConversionInProgress),
'last-item': $last
}" ng-init="baseCourses.patchData(cm)">
<bb-base-course-card ng-class="::{'first': baseCourses.isFirstNonFavorite(cm, term).ui.isNeedCreateFTUE}" membership="cm" term="term" delegated-api="baseCourses"><!-- If internal course -->
<!----><div ng-if="!membership.course.ui.isExternal" class="element-card course-element-card highlight pointer bar js-course-details child-is-invokable course-color-5" data-course-id="_6138_1" bb-click-to-invoke-child="a.course-title" stop-propagation="true" ng-hide="pinned" ng-class="{
'inactive-link': !membership.course.canAccess() || baseCourses.isSetToUltraCourse(membership.course),
'js-complete': membership.course.isComplete(),
'js-updating-conversion-status': membership.course.ui.isUpdatingConversionStatus || baseCourses.isSetToUltraCourse(membership.course),
'js-conversion-in-progress': membership.course.ui.showConversionInProgress,
'show-focus-outline': baseCourses.isFocusedCourse(membership.course.id),
'set-to-ultra-course': baseCourses.isSetToUltraCourse(membership.course)
}" tabindex="-1" id="course-list-course-_6138_1">
我要的是'bb-base-course-card'标签下div的'data-course-id'。 (在最后一个标签 'id' 中也是可行的,但在 'course-list-course-' 之后连接。我也可以使用它。)
有人可以帮忙吗???
您可以只使用这个 CSS 选择器来获得那个 div 吗?
bb-base-course-card > div
我解决了
for item in page.find_elements_by_xpath('//*[@class="default-group term-"]'):
link.append(item.find_element_by_css_selector('bb-base-course-card > div').get_attribute('data-course-id'))
还是谢谢你。