js抓取网页内容(爬104人力银行网页内容时,遇到定位标签找不到内容)

优采云 发布时间: 2021-09-10 19:04

  js抓取网页内容(爬104人力银行网页内容时,遇到定位标签找不到内容)

  大家好,我是爬虫初学者。练习爬取104人行网页内容时,遇到“位置标签中找不到内容”的问题,请帮我解决。

  你要抓取的网页url:()

  要抓取的网页内容:“条件”中“工作技能”的内容

  

  使用的编程语言:Python 3

  使用包:requests, BeautifulSoup

  附加代码:(@ellieytc/ProperFrigidZettabyte)

  下图是anaconda jupyter notebook的环境截图:

  

  我遇到的问题是:

  打印(soup)后,发现返回的html文档内容中没有“条件要求”大块的文字内容,但是回到“开发者工具”看,有“条件要求”需求”块找到文件中的标签和文本内容。

  “开发者工具”界面如下:

  

  所以我尝试定位标签并编写语法:

  '''jobs = soup.select('div.job-requirement> p> span> a> u')'''

  但返回的是一个空集合。

  

  试试google和解决问题的思路:

  select() 中的标签语法有错吗?如果是,则应打印属性错误。 (os:这不是问题!)返回一个空集合,是不是说明定位不对,没有抓到数据?所以我试着把它改成``'jobs = soup.select('div')''',但是它返回了一堆div标签,但是没有“文本”内容。 (os:嗯,可能是定位错误!但是不知道怎么回事?)“print(soup)”后,发现里面没有“条件要求”的大块文字内容返回的html文档;但是里面全是前一块“工作内容”的文字,很奇怪!于是我在谷歌上搜索:爬虫抓不到标签,发现如下情况:

  -动态网页的问题。 (os:但我的是静态网页,不是这个问题!)

  -要抓取的内容是用javascript写的,所以不会在html文档中呈现。 (os:不知道是什么意思?那为什么在css中可以找到标签?)

<p>-反爬虫。 (os:但是我爬进去了,为什么只有“条件”这个块找不到?是隐藏的吗?如果隐藏了,但是找到了标签,为什么抓不到??)

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线