如何下载动态页面的内容?

2024-03-29 01:36:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用scrapy下载此页面的内容:

http://www.bbb.org/atlanta/business-reviews/fence-contractors/summit-fence-in-acworth-ga-27501223/customer-reviews?cacheit=y

但当我往里看的时候

response.body

评论的内容不在那里,我指的是‘负面体验(1评论)’的内容,上面说:“祝你使用这家公司好运。布赖恩对我和我丈夫粗暴无礼。在讨论了我们想要什么之后……”

scrapy shell 'http://www.bbb.org/central-texas/business-reviews/concrete-stamped-and-decorative/artistic-impressions-concrete-staining-in-new-braunfels-tx-90080290/Customer-Reviews' -s USER_AGENT='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36'

content  = response.body

content.find('Good luck using this company')

它返回:-1

我怎么能得到这些数据?你知道吗


Tags: inorghttp内容responsewww评论body
1条回答
网友
1楼 · 发布于 2024-03-29 01:36:43

通过请求/ReadReviews端点并提供页面和体验类型,可以分别加载评论。例如,在提供的示例中,它将是:

http://www.bbb.org/central-texas/business-reviews/concrete-stamped-and-decorative/artistic-impressions-concrete-staining-in-new-braunfels-tx-90080290/ReadReviews?page=1&exp=-1

在spider中需要做的是向该端点生成/返回一个^{},并解析回调中的评论。你知道吗

例如,如何获取审阅详细信息:

for review in response.css("tr"): 
    review_detail = review.css("td.complaint-detail::text").extract_first()
    print(review_detail)

相关问题 更多 >