1
Sylv 2015-05-25 18:32:22 +08:00 via iPhone 1
result = soup.find('div', 'loopsum')
print result.p.text |
2
killpanda 2015-05-25 18:47:49 +08:00
result = soup.get_text()
|
4
LINAICAI OP @Sylv 大牛再请教个问题,形如data-original的属性怎么取
比如<img alt="aaa" class="lazy" data-original="xxx" height="140" src="ccc" width="201"/> 想得到xxx,怎么写,这段已经是通过soup.findAll('div','loopmain',limit=10)拿到的,想进一步得到xxx? |
5
Sylv 2015-05-26 15:58:30 +08:00 via iPhone
tag['data-original']
先去过遍 bs4 的文档,这些都很基础 |
8
Sylv 2015-05-26 17:32:08 +08:00 via iPhone
没明白你的问题,你想找有 data-original 的 tag?
|
9
LINAICAI OP @Sylv 想找 所有data-original里面的文本,这个文本是个图片URL,但并不是所有data-original都是我要的,所以要加一个条件img里面带class='lazy'的
<img alt="aaa" class="lazy" data-original="xxx" height="140" src="ccc" width="201"/> 想取到xxx的文本值 |
10
Sylv 2015-05-26 17:38:35 +08:00 via iPhone
results = soup.find_all('img', data-original=True)
print results[0]['data-original'] |
11
Sylv 2015-05-26 17:39:57 +08:00 via iPhone
results = soup.find_all('img', class_="lazy", data-original=True)
print results[0]['data-original'] |
12
LINAICAI OP @Sylv
出错了 images = soup.find_all('img', class_='lazy', data-original=True) SyntaxError: keyword can't be an expression |
13
Sylv 2015-05-26 17:57:54 +08:00 via iPhone 1
images = soup.find_all('img', class_='lazy', attrs={'data-original':True})
没注意到参数名中不能有 “-“ 的问题,得用字典 Some attributes, like the data-* attributes in HTML 5, have names that can’t be used as the names of keyword arguments. You can use these attributes in searches by putting them into a dictionary and passing the dictionary into find_all() as the attrs argument: |