ver Jan9th
implemented get_accessibility_tree to convert the accessibility tree from pyatspi to an xml format similar to view hierarchy and HTML havn't merged into server/main.py tested the AT structure of main window of Thunderbird
This commit is contained in:
@@ -1,7 +1,13 @@
|
||||
#from playwright.sync_api import sync_playwright, Browser
|
||||
#from marionette_driver.marionette import Marionette
|
||||
#import marionette
|
||||
import pyatspi
|
||||
#import pyatspi
|
||||
|
||||
import lxml.etree
|
||||
from lxml.cssselect import CSSSelector
|
||||
from lxml.etree import _Element
|
||||
|
||||
from typing import List
|
||||
|
||||
if __name__ == "__main__":
|
||||
#with sync_playwright() as plwr:
|
||||
@@ -32,3 +38,16 @@ if __name__ == "__main__":
|
||||
|
||||
#registry = pyatspi.Registry.get_default()
|
||||
#registry
|
||||
|
||||
#xml = "../../任务数据/Thunderbird/vertical-card-view.xml"
|
||||
xml = "../../任务数据/Thunderbird/vertical-table-view.xml"
|
||||
at: _Element = lxml.etree.parse(xml)
|
||||
|
||||
#elements: List[_Element] = CSSSelector('application[name=Thunderbird] page-tab-list')(at) # page tab tags
|
||||
#elements: List[_Element] = CSSSelector('application[name=Thunderbird] panel>scroll-pane>internal-frame>panel[name$="anonym-x2024@outlook.com"]')(at) # email tag page
|
||||
#elements: List[_Element] = CSSSelector('application[name=Thunderbird] panel>scroll-pane>internal-frame>panel[name$="anonym-x2024@outlook.com"]>section:nth-child(3)')(at) # email tag page
|
||||
#elements: List[_Element] = CSSSelector('application[name=Thunderbird] panel>scroll-pane>internal-frame>panel[name$="anonym-x2024@outlook.com"]>section[attr|id=threadPane]>section[attr|id="threadTree"]>table[attr|class="tree-table"]>section[attr|class~="tree-table-header"]>table-row>column-header[name=Subject]>push-button', namespaces={"attr": "uri:deskat:attributes.at-spi.gnome.org"})(at) # table view, column header
|
||||
elements: List[_Element] = CSSSelector('application[name=Thunderbird] panel>scroll-pane>internal-frame>panel[name$="anonym-x2024@outlook.com"]>section[attr|id=threadPane]>section[attr|id="threadTree"]>table[attr|class="tree-table"]>tree>tree-item>section[name="Subject"]>section>section', namespaces={"attr": "uri:deskat:attributes.at-spi.gnome.org"})(at) # table view, column header
|
||||
print(len(elements))
|
||||
for elm in elements:
|
||||
print(lxml.etree.tostring(elm, encoding="unicode", pretty_print=True))
|
||||
|
||||
Reference in New Issue
Block a user