【发布时间】:2020-05-23 19:55:21
【问题描述】:
我对 Python 很陌生,正在赶上一个练习题。 在从 HTML 跨度标记中提取文本时,某些部分位于“阅读更多”下,除非我在此处单击它,否则跨度标记不会随外部文本更新。这意味着当我为标签和类运行 BeautifulSoup 和 findAll 时,唯一的第一部分,没有“阅读更多”部分,作为摘录返回。无法弄清楚我应该如何去追求?这是酒店评论的文本挖掘练习。 代码如下,未提供完整部分:
url_soup=soup(url_html,"html.parser")
profiles = url_soup.findAll("div",{"class":"hotels-community-tab-common-Card__card--ihfZB hotels-community-tab-common-Card__section--4r93H"})
for profile in profiles:
Review_Body = profile.findAll("q",{"class":"location-review-review-list-parts-ExpandableReview__reviewText--gOmRC"})
Review_Body = Review_Body[0].text.replace(",","").replace("\r\n","").strip(" ")
Page without clicking "read more" Page after clicking "read more", when the entire text till end is visible
如前所述,这只会返回部分,而无需单击“阅读更多”,然后是“...”。请帮忙。 PS:我没有安装和使用 Srapy 或 Selenium 模块。他们会更容易吗?
【问题讨论】:
-
你有实际链接吗?图片无济于事......您使用哪个库/导入?请求,urllib?
-
是的,我使用了来自 urllib 的请求。链接是 [link]tripadvisor.in/… [link] 此页面中的所有评论都有动态的“阅读更多”按钮。感谢您的帮助。
-
你提供的链接给了 tge 完整的数据,我想你使用这个链接:tripadvisor.com/Profile/HollyABC