導航:首頁 > 編程語言 > python句柄

python句柄

發布時間:2022-01-17 09:38:09

python pywin32 裡面操作窗體,獲取窗體裡面的數據,在函數GetDlgItem函數中,怎麼獲取第二個參數的值

不知道你解決了沒,最近正好研究python。
hwnd=win32gui.FindWindow()這個獲取窗體句柄,大概都會用;
ctrl=win32gui.FindWindowEx(hwnd,None,'窗口類名',『標題文本』)已知控制項類名或控制項名時獲取控制項句柄,這個標題文本不一定存在,所以使用None默認值獲取的是該窗口類名中第一個順位的控制項句柄。
你使用b=win32gui.GetDlgItem(edit,資源ID)最終結果是獲取的是句柄,這里的資源ID其實是spy++中的窗口ID,句柄是可變的,窗口ID是不可變的。這里似乎錯了,你這樣子大概獲取的是控制項中的子項(控制項有子項的話,比如Combox中的edit框),我猜的,沒試過。b=win32gui.GetDlgItem(hwnd,窗口ID)是已知ID下獲取某控制項句柄
如果你想獲取某個控制項的ID則ctrlid=win32gui.GetDlgCtrlID(ctrl)這是一隻某控制項句柄的情況下獲取該控制項在應用程序中的窗口ID。
如果不知控制項句柄的情況下大概可以試試spy++獲取窗口ID,把窗口ID(這個是16進制的)轉化成10進制帶進b=win32gui.GetDlgItem(hwnd,窗口ID)大概也可以得到控制項句柄。
其實就是三個函數之間的轉化
ctrl=win32gui.FindWindowEx(hwnd,None,'edit',None)控制項句柄
ctrlid=win32gui.GetDlgCtrlID(ctrl)控制項的窗口id
ctrl2=win32gui.GetDlgItem(hwnd,ctrlid)控制項句柄
print "%x" %ctrllist
print "%x" %ctrlid
print "%x" %ctrl
輸出,看一下數據與spy++是否一致。然後ctrl=ctrl2

⑵ python 獲得編輯區句柄

你拿到的是主窗口句柄,還需要搜索遍歷,找到子窗口或控制項。有些是自定義,只能通過位置定義。

⑶ python中的handle是什麼方法

一般來說,handle就相當於C中的函數指針,你把哪個函數的句柄賦給handle,handle就代表哪個函數。當然,你也可以自己定義一個handle。

⑷ Python怎麼獲取不到子窗口的句柄呢,如圖,求指導,剛學習Python的小白吃,求指導

 CSDN問答為您找到Python怎麼獲取不到子窗口的句柄呢,如圖,求指導相關問題答案,如果想了解更多關於Python怎麼獲取不到子窗口的句柄呢,如圖,求指導 python 技術問題等相關問答,請訪問CSDN問答。

⑸ python中使用selenium獲取窗口句柄時,window_handles取值出錯

Form formPreview = new Form();
public Leaf(string name) : base(name) { }
public override void Add(Component c)
{
Console.WriteLine("Cannot add to a leaf");
}
public override void Remove(Component c)
{
Console.WriteLine("Cannot remove to a leaf");
}
public override void Display(int depth)
{
Console.WriteLine(new string('-',depth)+name);
}
}

⑹ 怎麼用Python獲取Chrome的地址欄句柄

首先,假設通過Firefox()瀏覽器定向爬取CSDN首頁導航欄信息,審查元素代碼如下圖所示,在div class="menu"路徑的ul、li、a下,同時可以定位ul class="clearfix"。

代碼如下所示:
?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# coding=utf-8
import os
from selenium import webdriver

#PhantomJS無界面瀏覽器
##driver = webdriver.PhantomJS(executable_path="G:\phantomjs-1.9.1-windows\phantomjs.exe")

#打開火狐瀏覽器
driver = webdriver.Firefox()
url = "http://www.csdn.net/"
driver.get(url)

#xpath路徑定位導航欄
elem_dh = driver.find_elements_by_xpath("//div[@class='menu']/ul/li/a")
for elem in elem_dh:
print elem.text #獲取正文
print elem.get_attribute('href') #獲取屬性值

然後轉換成chrome瀏覽器,只需要在"C:\Program Files (x86)\Google\Chrome\Application\"路徑下放置個chromedriver.exe驅動,再進行調用即可,代碼如下所示:
?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

# coding=utf-8
import os
from selenium import webdriver

#PhantomJS無界面瀏覽器
##driver = webdriver.PhantomJS(executable_path="G:\phantomjs-1.9.1-windows\phantomjs.exe")

#打開火狐瀏覽器
#driver = webdriver.Firefox()

#谷歌瀏覽器
chromedriver = "C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)

#WebDriverException: Message: unknown error: session deleted because of page crash

url = "http://www.csdn.net/"
driver.get(url)

⑺ python根據句柄如何自動點擊按鈕

用python的sendkeys直接模擬鍵盤,用ctype擴展來點滑鼠。你需要做的就是用python打開瀏覽器,然後輸入網站,在找到按鈕的坐標(固定到程序里),然後點擊就行了。不過簡單的可以,復雜點的就要考慮很多問題了。

⑻ python win32GUI模塊中切換句柄的一個奇怪問題

每次執行的時候你把句柄列印出來,一目瞭然

⑼ python中獲取子窗口的句柄

可以使用win32gui 以及pyhook 庫來實現你的需求

閱讀全文

與python句柄相關的資料

熱點內容
哪個app可以約大巴車 瀏覽:181
linux中seq命令 瀏覽:827
代理伺服器的地址埠號碼 瀏覽:163
程序員給領導提意見 瀏覽:460
哪裡可以看夏木的電影app 瀏覽:452
如何辨別原裝數據線安卓 瀏覽:631
手機pc游戲解壓教程 瀏覽:696
安卓怎麼設置高清動態壁紙 瀏覽:777
古劍七存檔文件夾 瀏覽:376
mom伺服器下載文件命令 瀏覽:277
office編程教程 瀏覽:672
為何稱加密鎖為加密狗 瀏覽:558
阿里雲伺服器遠程異常 瀏覽:290
世界上最大的魔方解壓球 瀏覽:417
書籍編譯器下載 瀏覽:715
rosmoveit編程 瀏覽:198
人人講app怎麼使用 瀏覽:293
android查看文件工具 瀏覽:943
女程序員化妝視頻大全 瀏覽:745
錄音筆如何修改文件夾 瀏覽:645