【发布时间】:2019-04-04 13:59:28
【问题描述】:
我要爬取tag:p, class:txt 但我不能
weblink=https://school.iamservice.net/organization/18193/group/2079351
----代码------------------ -------------------------------------------------- -------------
import bs4, urllib.request
url="https://school.iamservice.net/organization/18193/group/2079351"
html=urllib.request.urlopen(url)
bsObj=bs4.BeautifulSoup(html,"html.parser")
txt=bsObj.findAll("p",{"class":"txt"})
print(txt)
【问题讨论】:
-
那么当你运行这段代码时会发生什么?您看到的结果与预期的结果如何?
-
第一次尝试美丽的汤时,我遇到了同样的麻烦。正如Kundu的回答,并非所有网站都准备好html,许多网站在加载后使用JS进行渲染(渲染步骤在您的浏览器上,这就是为什么您可以看到内容,但如果您通过美丽的汤加载,它只是一个骨架。因此,使用 selenium 将链接呈现为 Kundu 的答案。但是 selenium 对于低端计算机和许多 API 来说有点重,所以尝试使用 Splash。最简单的安装方法是使用 docker 容器。https://splash.readthedocs.io /en/stable/install.html#linux-docker
标签: html python-3.x beautifulsoup web-crawler