pyqt5菜单打开本地html,PyQt5 QWebEnginePage-可以编辑HTML以打开下拉菜单吗?

我正在尝试开发一种可持续的网络抓取脚本,以从网站获取所有产品的列表。产品类别链接位于网页上的下拉(或可扩展)元素中。我正在使用PyQt5来模拟客户端,然后再提取html并将其转换为带有Beautiful Soup的文本。

例如,如果您正在浏览器上访问该网站,则必须单击页面左上角附近的按钮以打开从屏幕左侧弹出的类别列表(我将将此称为“侧栏”)。在这些类别的每个类别中,当单击它们时,都有一个更具体的类别列表,每个类别都包含我尝试使用自己的代码获取的链接(我将其称为“子类别”)。

即使隐藏侧边栏,初始类别列表元素也会出现在我的美丽汤中,但是除非扩展了子类别标题,否则子类别元素仍然隐藏(因此,它们不会显示在我的汤中) )。我已通过手动检查Chrome浏览器中的元素来确认这一点。这是网页HTML的摘录,其中包含我自己的注释以帮助说明:

automation-id="nav-section-toggle" tabindex="-1"> #Initial category that contains sub-categories

这是子类别元素已扩展的外观:

automation-id="nav-section-toggle" tabindex="-1"> #Initial category that contains sub-categories

  • 元素将出现在HTML中。我通过Chrome浏览器中的手动检查确认了这一点。

我的问题是,是否可以从href元素中获取

?我的假设是,在初始解析之后,我必须编辑HTML才能将aria属性从“ False”更改为“ True”,然后使用这些更改重新解析HTML。如果不是,是否有其他方法可以从Selenium之外的网页上获取这些元素?我正在尝试使用一种更精简的方法(不打开浏览器窗口等)。

我可以提供实际的网站URL和该屏幕截图以帮助澄清,不确定是否认为这是好的做法或是否在Stack Overflow上允许使用(我是新来的!)。

有关我要使用的方法的更多背景信息,请参见以下内容:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值