ASedJavad
شنبه 28 شهریور 1394, 16:43 عصر
سلام
تو محیط ویندوز یک فایل اگزه دارم که دارای یک تکست باکس هست. و من میخوام متن درون این تکسن باکس رو بدست بیارم. مطابق شکل زیر:
135327
برای استخراج متنش، تابع زیر رو نوشتم:
from win32gui import SendMessage
from win32con import EM_GETLINE
def getText(h,LineNumber):
b=b' '*255
buffer=memoryview(b)
x= SendMessage(h,EM_GETLINE,LineNumber,buffer)
return (bytes(buffer[0:2*x]))
خود تابع، به نظر درست کار میکنه، اما متن استخراج شده، دقیقا اونی نیست که من میخوام. برا متون فارسی، که کلا یه چیز دیگه خروجی میده و برا متون انگلیسی، یه فاصله قبل از هر کاراکتر درج میکنه:
135328
خود فایل اگزه مورد نظر رو هم ضمیمه میکنم که اگه کسی خواست، بتونه تست کنه:
تو محیط ویندوز یک فایل اگزه دارم که دارای یک تکست باکس هست. و من میخوام متن درون این تکسن باکس رو بدست بیارم. مطابق شکل زیر:
135327
برای استخراج متنش، تابع زیر رو نوشتم:
from win32gui import SendMessage
from win32con import EM_GETLINE
def getText(h,LineNumber):
b=b' '*255
buffer=memoryview(b)
x= SendMessage(h,EM_GETLINE,LineNumber,buffer)
return (bytes(buffer[0:2*x]))
خود تابع، به نظر درست کار میکنه، اما متن استخراج شده، دقیقا اونی نیست که من میخوام. برا متون فارسی، که کلا یه چیز دیگه خروجی میده و برا متون انگلیسی، یه فاصله قبل از هر کاراکتر درج میکنه:
135328
خود فایل اگزه مورد نظر رو هم ضمیمه میکنم که اگه کسی خواست، بتونه تست کنه: