作者:明天会更好--好过_652 | 来源:互联网 | 2023-01-03 16:17
我需要从python 3中的所有打开的Google Chrome标签中获取所有网址,而不必与用户进行交互.我在Windows 10上使用Microsoft Visual Studio Python3
我试过了:
直接用open打开它(当前标签的路径) - 不起作用,因为我没有权限 - 我认为它被锁定,因为chrome激活地写入它.
Current_Tabs_Source = open(r"C:\Users\Beni\AppData\Local\Google\Chrome\User
Data\Default\Current Tabs", "r")
Current_Tabs_Raw = Current_Tabs_Source.read()
print(Current_Tabs_Raw) #just for checking
PermissionError:[Errno 13]权限被拒绝
通过sglite3打开 - 因为锁定而无法正常工作.我无法在任何地方找到密码.香港专业教育学院试图打开网址的历史,但它无论如何都不起作用.
import sqlite3
from os import path
data_path = path.expanduser('~') + r"\AppData\Local\Google\Chrome\User
Data\Default"
files = listdir(data_path)
history_db = path.join(data_path, 'history')
c = sqlite3.connect(history_db)
cursor = c.cursor()
select_statement = "SELECT urls.url, urls.visit_count FROM urls, visits
WHERE urls.id = visits.url;"
cursor.execute(select_statement)
results = cursor.fetchall()
print(results) #just for checking
sqlite3.OperationalError:数据库已锁定
使用selenium和第三方chrome扩展将所有URL复制到剪贴板 - 不起作用,因为这些扩展只能在活动的selenium窗口中工作.因此Windows中包含我想要的选项卡不会被复制.
我已经考虑过将Chrome扩展程序每隔30秒复制到一个临时文件中.但我只知道最小的Javascript,所以这件事让我很生气.
那么有人知道在Python中这样做的方法吗?非常感谢任何其他解决方案.