繁体   English   中英

在python中爬行,我无法使用findALL

[英]Crawling In python, I can't use the findALL

我正在使用python 3.x练习爬网

<p style="MARGIN-BOTTOM: 3pt; TEXT-AUTOSPACE: ; mso-pagination: none; mso
padding-alt: 0pt 0pt 0pt 0pt" class="0">
<a href="http://www.blablabla.pdf"    target="_blank">
<strong><img align="center"src="http://blablablablablabla.png"
width="108"></strong></a></p>

和p> a

<a href="http://BLABLABLABLABLA.pdf"
target="_blank"><strong><img align="center"
src="http://blablablablabla.png"
width="108"></strong></a>

然后我用了

divTag = soup.find('p', style='MARGIN-BOTTOM:')

为了得到

a href="http://blabla~~~

但是,我不明白。

结果(divTag = soup.find('p',style ='MARGIN-BOTTOM:')为None。

我不知道为什么

<p style="MARGIN-BOTTOM: 3pt; TEXT-AUTOSPACE: ; mso-pagination: none; mso
padding-alt: 0pt 0pt 0pt 0pt" class="0">

风格是

"MARGIN-BOTTOM: 3pt; TEXT-AUTOSPACE: ; mso-pagination: none; mso
padding-alt: 0pt 0pt 0pt 0pt"

不是MARGIN-BOTTOM

import bs4

html = '''<p style="MARGIN-BOTTOM: 3pt; TEXT-AUTOSPACE: ; mso-pagination: none; mso
padding-alt: 0pt 0pt 0pt 0pt" class="0">
<a href="http://www.auri.re.kr/pdf/UrbanPlanning_BusanJingu.pdf"    target="_blank">
<strong><img align="center"src="http://auri.re.kr/upload/contentsImg/IMG20140922162029.png"
width="108"></strong></a></p>'''

soup = bs4.BeautifulSoup(html, 'lxml')

方法1:

soup.select_one('p a').get('href')

方法2:

soup.select_one('a[href$=".pdf"]').get('href')

出:

'http://www.auri.re.kr/pdf/UrbanPlanning_BusanJingu.pdf'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM