如何使用CSS选择器使用BeautifulSoup检索某个类中的特定链接?

箭头

我是Python的新手,我正在学习它用于刮擦,我正在使用BeautifulSoup来收集链接(即'a'标签的href)。我正在尝试收集http://allevents.in/lahore/网站上“即将发生的事件”标签下的链接我正在使用Firebug检查元素并获取CSS路径,但是此代码未返回任何内容。我正在寻找修复程序,并且还提供有关如何选择合适的CSS选择器以从任何站点检索所需链接的一些建议。我写了这段代码:

from bs4 import BeautifulSoup

import requests

url = "http://allevents.in/lahore/"

r  = requests.get(url)

data = r.text

soup = BeautifulSoup(data)
for link in soup.select( 'html body div.non-overlay.gray-trans-back div.container div.row div.span8 div#eh-1748056798.events-horizontal div.eh-container.row ul.eh-slider li.h-item div.h-meta div.title a[href]'):
    print link.get('href')
马丁·彼得斯(Martijn Pieters)

该页面在使用类和标记时不是最友好的,但是即使如此,您的CSS选择器也太具体了而无法在此处使用。

如果您想要即将发生的事件,则只需要第一个<div class="events-horizontal">,然后只获取<div class="title"><a href="..."></div>标签,因此标题上的链接:

upcoming_events_div = soup.select_one('div#events-horizontal')
for link in upcoming_events_div.select('div.title a[href]'):
    print link['href']

请注意,您应使用r.text; 使用r.content并保留对Unicode的解码到BeautifulSoup。请参阅utf-8中的字符编码问题

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery选择器使用:not

来自分类Dev

实习生JS CSS选择器使用变量

来自分类Dev

如何使用日期时间选择器使用vb.net在SQL中仅插入日期

来自分类Dev

如何使用CSS选择器按文本查找链接

来自分类Dev

如何使用CSS选择器按文本查找链接

来自分类Dev

Python Selenium:如何使用CSS选择器单击下拉菜单中的链接?

来自分类Dev

您可以在BeautifulSoup中编写使用类或样式在div中标识所需信息的CSS选择器吗?

来自分类Dev

如何使用SASS定义CSS选择器类前缀

来自分类Dev

如何使用SASS定义CSS选择器类前缀

来自分类Dev

如何使用CSS属性选择器定位特定高度?

来自分类Dev

硒日期选择器使用JavascriptExecutor

来自分类Dev

如何为类的链接(标签)设置CSS选择器

来自分类Dev

对单个jQuery选择器使用id而不是类有多快?

来自分类Dev

使用 BeautifulSoup 检索图像链接

来自分类Dev

如何在SASS中使用父选择器将类链接到元素

来自分类Dev

使用BeautifulSoup从网页中抓取特定链接

来自分类Dev

如何使用jQuery选择器使用兄弟标签构建层次结构对象

来自分类Dev

如何使用beautifulsoup从html标记的特定类中获取数据?

来自分类Dev

JavaScript颜色选择器使用我不熟悉的CSS语法?

来自分类Dev

如何使用“:not”组合css选择器

来自分类Dev

如何在SASS中链接CSS选择器?

来自分类Dev

CSS 选择器使输入框中的文本更大

来自分类Dev

使用Python中的BeautifulSoup从Google搜索中检索链接

来自分类Dev

如何使用CSS选择器在特定元素之后选择元素?

来自分类Dev

如何使用类ID中带有空格的选择器选择scrapy中的表?

来自分类Dev

如何使用js / css对特定类禁用</ td>选择?

来自分类Dev

如何使用js / css对特定类禁用</ td>选择?

来自分类Dev

对EXTJS中的同一选择器使用不同的事件

来自分类Dev

无法识别的选择器使用通知发送到ViewController中的实例

Related 相关文章

  1. 1

    jQuery选择器使用:not

  2. 2

    实习生JS CSS选择器使用变量

  3. 3

    如何使用日期时间选择器使用vb.net在SQL中仅插入日期

  4. 4

    如何使用CSS选择器按文本查找链接

  5. 5

    如何使用CSS选择器按文本查找链接

  6. 6

    Python Selenium:如何使用CSS选择器单击下拉菜单中的链接?

  7. 7

    您可以在BeautifulSoup中编写使用类或样式在div中标识所需信息的CSS选择器吗?

  8. 8

    如何使用SASS定义CSS选择器类前缀

  9. 9

    如何使用SASS定义CSS选择器类前缀

  10. 10

    如何使用CSS属性选择器定位特定高度?

  11. 11

    硒日期选择器使用JavascriptExecutor

  12. 12

    如何为类的链接(标签)设置CSS选择器

  13. 13

    对单个jQuery选择器使用id而不是类有多快?

  14. 14

    使用 BeautifulSoup 检索图像链接

  15. 15

    如何在SASS中使用父选择器将类链接到元素

  16. 16

    使用BeautifulSoup从网页中抓取特定链接

  17. 17

    如何使用jQuery选择器使用兄弟标签构建层次结构对象

  18. 18

    如何使用beautifulsoup从html标记的特定类中获取数据?

  19. 19

    JavaScript颜色选择器使用我不熟悉的CSS语法?

  20. 20

    如何使用“:not”组合css选择器

  21. 21

    如何在SASS中链接CSS选择器?

  22. 22

    CSS 选择器使输入框中的文本更大

  23. 23

    使用Python中的BeautifulSoup从Google搜索中检索链接

  24. 24

    如何使用CSS选择器在特定元素之后选择元素?

  25. 25

    如何使用类ID中带有空格的选择器选择scrapy中的表?

  26. 26

    如何使用js / css对特定类禁用</ td>选择?

  27. 27

    如何使用js / css对特定类禁用</ td>选择?

  28. 28

    对EXTJS中的同一选择器使用不同的事件

  29. 29

    无法识别的选择器使用通知发送到ViewController中的实例

热门标签

归档