javascript - Webscrape JS 呈现网站
问题描述
我试图弄清楚如何通过 JavaScript 呈现这个网站https://cnx.org/search?q=subject:%22Arts%22 。当我查看页面源代码时,代码很少。我知道 BeautifulSoup 不能做到这一点。我已经尝试过 Selenium,但我是新手。关于如何抓取该网站的任何建议?
解决方案
您可以使用网页直接从(使用 JavaScript)获取数据的 API。https://archive.cnx.org/search?q=subject:%22Arts%22它返回 JSON,所以你只需要解析 JSON。
import requests
import json
url = "https://archive.cnx.org/search?q=subject:%22Arts%22"
r = requests.get(url)
j = r.json()
# Print the json object
print (json.dumps(j, indent=4, sort_keys=True))
# Or print specific values
for i in j['results']['items']:
print (i['title'])
print(i['summarySnippet'])
推荐阅读
- solidity - tondev“错误:参数参数(元组)期望名称在......”当使用有效负载参数时
- email - Outlook 特有的暗模式
- python - Python在列表中输入一个水果并统计有多少个单词
- npm - 如何更新 npm 包的依赖项?
- php - 为什么不使用长寿命会话 ID 来代替带有令牌的持久 cookie?
- laravel - 我如何让我的 cascadeOnDelete 在 laravel 中工作
- java - org.mockito.exceptions.misusing.WrongTypeOfReturnValue
- python - 尝试可视化 ScoreCAM 时图形断开值错误
- amazon-web-services - 在 AWS 中管理一次性基础设施作业
- css - 在模态引导程序中替换相机预览 webcam.js 的当前宽度