اطرح أسئلة حول كيفية التقاط أو تحويل صفحات الويب أو HTML into الصور أو ملفات CSV أو PDF أو DOCX وكذلك حول كيفية تحويل مقاطع الفيديو intس المتحركة GIF باستخدام API لدينا.
خطأ:
تتبع (آخر مكالمة أخيرة):
ملف "GrabzItClient.py"، السطر 6، في
GrabzIt.SaveTo("المستندات/النتيجة.docx")
الملف "C:\Program Files\Python36\lib\site-packages\GrabzIt\GrabzItClient.py"، السطر 235، في SaveTo
معرف = الذات.Save()
الملف "C:\Program Files\Python36\lib\site-packages\GrabzIt\GrabzItClient.py"، السطر 209، في Save
obj = self._take(sig, callBackURL)
الملف "C:\Program Files\Python36\lib\site-packages\GrabzIt\GrabzItClient.py"، السطر 223، في _take
إرجاع self.HTTPPost(self.request.url, self.request.options._getParameters(self.applicationKey, sig, callBackURL, 'html', quote(self.request.data)))
الملف "C:\Program Files\Python36\lib\site-packages\GrabzIt\GrabzItClient.py"، السطر 629، في HTTPPost
h.endheaders()
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 1234، في الرؤوس النهائية
self._send_output(message_body, encode_chunked=encode_chunked)
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 1026، في _send_output
إرسال ذاتي (رسالة)
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 964، قيد الإرسال
الاتصال الذاتي ()
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 936، في الاتصال
(self.host،self.port)، self.timeout، self.source_address)
الملف "C:\Program Files\Python36\lib\socket.py"، السطر 704، في create_connection
للدقة في getaddrinfo(host, port, 0, SOCK_STREAM):
الملف "C:\Program Files\Python36\lib\socket.py"، السطر 743، في getaddrinfo
للدقة في _socket.getaddrinfo(host, port, Family, type, proto, flags):
المقبس.gaierror: فشل الحصول على [Errno 11001] getaddrinfo
المصدر: (لقد قمت بتثبيت GrabzIt وحصلت على مفتاح التطبيق وسر التطبيق)
من GrabzIt قم باستيراد GrabzItClient
GrabzIt = GrabzItClient.GrabzItClient (مفتاح التطبيق، سر التطبيق)
GrabzIt.HTMLToDOCX("" مرحبا بالعالم! ")
GrabzIt.SaveTo("المستندات/النتيجة.docx")
هل يمكن أن تخبرني ماذا يجب أن أفعل؟
مرحبًا بك في المجتمع!
عادة أ المقبس.gaierror: فشل الحصول على [Errno 11001] getaddrinfo يحدث عندما يتم استدعاء التعليمات البرمجية من خلف جدار الحماية أو الوكيل. يرجى التأكد من وصول التطبيق إلى المنفذ 80.
شكرا لإجابتك.
نعم، إنها مشكلة الوكيل. إنه يعمل بشكل جيد عندما أقوم بتغيير جهاز الكمبيوتر الآخر الذي لا يحتوي على وكيل.
كيف يمكن أن تعمل مع الوكيل؟
وستكون هذه ميزة جديدة. نحن نبحث عما إذا كان بإمكاننا تعديل عميل Python لتمكين استخدام الخوادم الوكيلة.
إذا كان ذلك ممكنًا، فسنعود إليك بالإصلاح. يمكنك تجربة ذلك بنفسك إذا أردت نظرًا لأن جميع عملائنا مفتوحو المصدر: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py
لقد أضفنا الميزة الجديدة. ما عليك سوى تنزيل ملف GrabzItClient.py واستبدال نسختك من هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py
يمكنك بعد ذلك تعيين عنوان URL الوكيل للخادم الوكيل الخاص بك باستخدام طريقة SetLocalProxy الجديدة، على سبيل المثال:
GrabzIt.SetLocalProxy("http://123.123.123.123:21231")
من فضلك اسمح لنا الآن كيف ستسير الأمور وسنقوم بإصدار جديد قريبًا!
شكرا لإجابتك.
أنا محل GrabzItClient.py وقمت بتغيير المصدر الخاص بي:
GrabzIt = GrabzItClient.GrabzItClient (مفتاح التطبيق، سر التطبيق)
GrabzIt.SetLocalProxy("http://xxx@jp.xxxxx.com:yyyyyyy@zzz.proxy.zzz.zzzzzzz.com:8080")
GrabzIt.HTMLToDOCX("" مرحبا بالعالم! ")
GrabzIt.SaveTo("المستندات/النتيجة.docx")
مستخدم:xxx@jp.xxxxxx.com
كلمة السر:yyyyyyy
مخدم بروكسي:zzz.proxy.zzz.zzzzzzzz.com
ميناء:8080
رسالة خطأ:
تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py"، السطر 54، في
GrabzIt.SaveTo("result.docx")
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 487، في SaveTo
معرف = الذات.Save()
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 435، في Save
obj = self._take(sig, callBackURL)
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 463، في _take
إرجاع self.HTTPPost(self.request.url, self.request.options._getParameters(self.applicationKey, sig, callBackURL, 'html', quote(self.request.data)))
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 1307، في HTTPPost
الرؤوس ['تفويض الوكيل'] = 'أساسي' + base64.b64encode(auth)
الملف "C:\Program Files\Python36\lib\base64.py"، السطر 58، في b64encode
المشفرة = binascii.b2a_base64(s، السطر الجديد = خطأ)
TypeError: مطلوب كائن يشبه البايت، وليس "str"
نفس رسالة الخطأ حتى أنني تغيرت SetLocalProxy من عند "http://xxx@jp.xxxxx.com:yyyyyyy@zzz.proxy.zzz.zzzzzzz.com:8080" إلى "http://xxx%40jp.xxxxx.com:yyyyyyy@zzz.proxy.zzz.zzzzzzz.com:8080"
آسف، ربما قمت بتعيين الوكيل الخطأ.
لقد قمت بتغيير الوكيل إلى "http://the_other_proxy_server:port" وأصبحت رسالة الخطأ:
تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py"، السطر 54، في
GrabzIt.SaveTo("result.docx")
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 487، في SaveTo
معرف = الذات.Save()
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 435، في Save
obj = self._take(sig, callBackURL)
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 463، في _take
إرجاع self.HTTPPost(self.request.url, self.request.options._getParameters(self.applicationKey, sig, callBackURL, 'html', quote(self.request.data)))
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 1327، في HTTPPost
h.endheaders()
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 1234، في الرؤوس النهائية
self._send_output(message_body, encode_chunked=encode_chunked)
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 1026، في _send_output
إرسال ذاتي (رسالة)
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 964، قيد الإرسال
الاتصال الذاتي ()
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 940، في الاتصال
self._tunnel()
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 919، في _tunnel
رسالة.شريط()))
خطأ OS: فشل اتصال النفق: 407 مطلوب مصادقة الوكيل
تحتاج إلى تحديد اسم المستخدم وكلمة المرور الخاصة بك كما يلي: http://username:password@example.com:12335
نعم، لقد قمت بتحديد اسم المستخدم وكلمة المرور الخاصة بي (السؤال يوم الأربعاء، 22 أغسطس، 2018 الساعة 09:34:43 صباحًا) مثل:
http://username:password@example.com:12335
اسم المستخدم هو عنوان البريد الإلكتروني (xxx@jp.xxxxx.com) لذلك قمت بالتغيير إلى xxx%40jp.xxxxx.com
لكنها نفس رسالة الخطأ:TypeError: مطلوب كائن يشبه البايت، وليس "str"
عذرا فقد فاتني ردك السابق أعتقد أن هذه مشكلة في Python 3 وأصدرت إصلاحًا من شأنه أن يحل الخطأ. يرجى تحديث GrabzItClient.py مرة أخرى من: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py
لقد استبدلت ملف python ووجدت رسالة خطأ جديدة:
تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py"، السطر 54، في
GrabzIt.SaveTo("result.docx")
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 244، في SaveTo
معرف = الذات.Save()
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 218، في Save
obj = self._take(sig, callBackURL)
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 232، في _take
إرجاع self.HTTPPost(self.request.url, self.request.options._getParameters(self.applicationKey, sig, callBackURL, 'html', quote(self.request.data)))
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 661، في HTTPPost
headers['Proxy-Authorization'] = 'Basic' + encodedAuth
TypeError: يجب أن يكون str وليس بايت
حسنًا، لقد قمنا بفك تشفيرها intيا ascii. نحن لا نستخدم Python 3، ولهذا السبب لفت انتباهنا. يرجى تحديث الكود الخاص بك من هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py
نظرًا لأن هذا مفتوح المصدر، فلا تتردد في تصحيح الأخطاء وتنفيذ أي تحسينات تريدها على Github. لأننا لا نستطيع الوصول إلى الإعداد الخاص بك.
شكرا جزيلا لمساعدتكم.
خطأ OS: فشل اتصال النفق: 407 مطلوب مصادقة الوكيل
سأحاول التصحيح.
نعتقد أننا نعرف ما هي المشكلة، إلا أنها ستتطلب إعادة كتابة بعض التعليمات البرمجية. لذلك سوف نتصل بك عند الانتهاء. نأمل في 24 ساعة.
أعتقد أننا قمنا بإصلاح المشكلة! يمكنك الحصول على أحدث إصدار هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py
شكرا للرد عليها.
رسالة خطأ جديدة:
تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py"، السطر 54، في
GrabzIt.SaveTo("result.docx")
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 243، في SaveTo
معرف = الذات.Save()
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 217، في Save
obj = self._take(sig, callBackURL)
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 231، في _take
إرجاع self.HTTPPost(self.request.url, self.request.options._getParameters(self.applicationKey, sig, callBackURL, 'html', quote(self.request.data)))
ملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 629، في HTTPPost
ح = self._getConnection()
الملف "C:\TEST\GrabzIt_python\GrabzIt\GrabzItClient.py"، السطر 679، في _getConnection
h.putheader("تفويض الوكيل"، "أساسي" + encodedAuth)
الملف "C:\Program Files\Python36\lib\http\client.py"، السطر 1201، في ملف putheader
رفع CannotSendHeader()
http.client.CannotSendHeader
لقد أجرينا بعض التحسينات الطفيفة على: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py
وقمت باختباره في Python 2.7 و3.4 و3.6 وهو يعمل في جميع البيئات، مع وبدون وكلاء ومع وكلاء معتمدين.
إذا كان لا يزال لا يعمل بالنسبة لك، فسوف تحتاج إلى تصحيح التعليمات البرمجية.
شكرا لك على الرد.
سوف أقوم بتصحيح المصدر الخاص بي.
بالمناسبة، هل اختبرت اسم المستخدم وهو البريد الإلكتروني مثل xxx@yyy.com؟