网页抓取:缺少 href 属性 - 需要模拟鼠标点击进行网页抓取吗?
P粉550823577
P粉550823577 2024-04-04 10:32:06
[HTML讨论组]

对于一个有趣的网络抓取项目,我想从 ttps://www.nhl.com/stats/teams 收集 NHL 数据。

有一个可点击的 Excel 导出标签,我可以使用 seleniumbs4 找到它。

不幸的是,事情到这里就结束了: 由于没有 href 属性,我似乎无法访问数据。

我通过使用 pynput 模拟鼠标点击得到了我想要的,但我想知道:

我可以采取不同的做法吗?如果感觉很笨拙。

-> 带有导出图标的标签可以在这里找到:

a class="styles__ExportIcon-sc-16o6kz0-0 dIDMgQ"

-> 这是我的代码

`import pynput
from pynput.mouse import Button, Controller
import time

from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Chrome(executable_path = 'somepath\chromedriver.exe')

URL = 'https://www.nhl.com/stats/teams'

driver.get(URL)
html = driver.page_source  # DOM with JavaScript execution complete
soup = BeautifulSoup(html)
body = soup.find('body')
print(body.prettify())


mouse = Controller()

time.sleep(5) # Sleep for 5 seconds until page is loaded
mouse.position = (1204, 669) # thats where the icon is on my screen
mouse.click(Button.left, 1) # executes download`

P粉550823577
P粉550823577

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号