python - 无法抓取 json() 类型的评论
问题描述
我正在从网站上抓取评分和评论:“https://www.bol.com/nl/p/Topdekmatras-80x200-koudschuim-comfort-plus-tijk-5-cm-hoog/9200000116759797/”
我有 2 个包含 json() 类型的链接: https ://www.bol.com/nl/ajax/dataLayerEndpoint.html? product_id=9200000116759797 ==> 以获得评级 https://www.bol.com/nl/ rnwy/productPage/reviews?productId=9200000116759797&offset=0&limit=30&loadMore=true ==> 获取评论数。
import pandas as pd
import requests
from bs4 import BeautifulSoup
product_link = "https://www.bol.com/nl/p/Topdekmatras-80x200-koudschuim-comfort-plus-tijk-5-cm-hoog/9200000116759797/"
rating_link = "https://www.bol.com/nl/ajax/dataLayerEndpoint.html?product_id=" + str(product_link[-17:].replace("/",""))
review_link = "https://www.bol.com/nl/rnwy/productPage/reviews?productId=%s&offset=0&limit=30&loadMore=true" %(str(product_link[-17:].replace("/","")))
review_soup = BeautifulSoup(requests.get(product_link).text, "lxml")
reviewtitle= [i.get_text() for i in review_soup.find_all("strong", class_="review__title")]
product_attributes = requests.get(rating_link).json()
但是,它抛出了最后一行代码的错误:
raise JSONDecodeError("Expecting value", s, err.value) from None
JSONDecodeError: Expecting value
为什么我无法获取 JSON 数据?
解决方案
推荐阅读
- flutter - 使用 Flutter 和 Ferry 获取数据后无法使用来自 GraphQl 查询的数据
- reactjs - 为什么 useEffect 挂钩看不到我的对象?
- php - 循环遍历具有大量行数的 postgres 查询结果是否存在危险?
- python-3.x - 加入时如何强制绝对路径是相对的?
- reactjs - error_message: '请求的产品还没有准备好。请提供一个 webhook 或稍后再试一次请求',
- javascript - 类型错误:无法读取未定义的属性“值”(第 2 行,文件“自动填充 Google 文档”)
- c# - 为什么用 SharpGL 绘制的所有立方体都是白色的?
- python - 谷歌分析 API 问题
- python - 如何以大致相等的比例生成随机数据集
- vba - 在所有 powerpoint 文本框上设置“溢出时收缩文本”选项的 VBA 代码