如何发送http post请求来扩展网页上的文本

2024-09-28 03:18:54 发布

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

我通过刮一些东西来学习刮痧。(例如,此页:https://www.tripadvisor.com/Attractions-g187791-Activities-Rome_Lazio.html)。我面临的一个问题是,如果一篇评论超过一定长度,它将显示一个“more”按钮,然后用javascript扩展文本。我无法发布请求来扩展这些评论的文本。你知道吗

按照这里给出的建议:Click a Button in Scrapy

我收到了发帖请求: 请求URL:https://www.tripadvisor.com/OverlayWidgetAjax?Mode=EXPANDED_HOTEL_REVIEWS_RESP&metaReferer=

请求 方法:岗位你知道吗

在scrapy shell中,我尝试了以下方法:

from scrapy.http.request import Request 
fetch("https://stackoverflow.com/questions/6682503/click-a-button-in-scrapy")
Request(url="https://www.tripadvisor.com/OverlayWidgetAjax?Mode=EXPANDED_HOTEL_REVIEWS_RESP&metaReferer=",method="POST")   

然后通过打电话给:

response.css("p.partial_entry").getall()        

与堆栈示例不同的是,它没有要发送的表单,只有一个简单的请求,即展开文本。单击“更多”按钮可展开页面上的所有案例。所以我希望这个方法可以扩展所有的文本,但它不会扩展任何内容,也不会改变页面上的任何内容。你知道吗

我的主要问题是,我有一个困难的时间测试,因为我的工作,通过粘壳或bash。你知道吗


Tags: 方法inhttps文本commodewww评论
1条回答
网友
1楼 · 发布于 2024-09-28 03:18:54

Request(…)实际上并没有获取该请求并相应地更新response。改用fetch(Request(…))。你知道吗

相关问题 更多 >

    热门问题