用requests返回的中国天气网的内容为什么会缺内容?

净坛使者
  • 2
新手上路,请多包涵

我用Python和requests下载了中国天气网的页面,可居然少了左边“台风动态”的内容。好奇怪,请问如何解决。

这是我下载回来网页打开后的效果。

clipboard.png

以下是直接登陆网页的效果

clipboard.png

以下是我的源代码,请各位大神帮忙解决。

问题描述

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

import requests, os
from bs4 import BeautifulSoup

url = 'http://typhoon.weather.com.cn/'
page = requests.get(url)
with open('page.html', 'w', encoding='utf-8') as f:

f.write(page.text)

你期待的结果是什么?实际看到的错误信息又是什么?

回复
阅读 671
3 个回答
✓ 已被采纳

这部分内容是通过 typhoonindex.js
请求接口提供的数据渲染的, 源码当然抓不到. 你按js的逻辑自己组装或者使用selenium Chrome直接获取渲染后的页面.

用selenium是可以的

你爬的数据部分可能是异步加载的,在你获取页面后可能没有请求这部分数据。

你知道吗?

宣传栏