أدوات لالتقاط وتحويل الويب
مجتمع GrabzIt على الإنترنت

خطأ في رمي عندما أركض التجريبي بيثون

خطأ:

تتبع (آخر مكالمة أخيرة):

ملف "GrabzItClient.py" ، السطر 6 ، في <module>

grabzIt.SaveTo( "وثائق / result.docx")

ملف "C: \ ملفات البرنامج \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 235 ، في SaveTo

معرف = النفس.Save()

ملف "C: \ ملفات البرنامج \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 209 ، في Save

obj = self._take (sig ، callBackURL)

ملف "C: \ Program Files \ Python36 \ lib \ site-package \ GrabzIt \ GrabzItClient.py" ، السطر 223 ، في _take

إرجاع self.HTTPPost (self.request.url ، self.request.options._getParameters (self.applicationKey ، sig ، callBackURL ، 'html' ، اقتباس (self.request.data)))

ملف "C: \ Program Files \ Python36 \ lib \ site-package \ 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

self.send (جي اس)

ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 964 ، قيد الإرسال

self.connect ()

ملف "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 (مضيف ، منفذ ، 0 ، SOCK_STREAM):

ملف "C: \ Program Files \ Python36 \ lib \ socket.py" ، السطر 743 ، في getaddrinfo

من أجل res in _socket.getaddrinfo (المضيف ، المنفذ ، العائلة ، النوع ، proto ، الإشارات):

socket.gaierror: [Errno 11001] getaddrinfo فشل

المصدر : (لقد قمت بتثبيت GrabzIt وحصلت على مفتاح التطبيق وأمانة التطبيق)

من GrabzIt استيراد GrabzItClient

grabzIt = GrabzItClient.GrabzItClient (مفتاح التطبيق ، أسرّة التطبيق)

grabzIt.HTMLToDOCX("<html> <body> <h1> Hello World! </h1> </body> </html>")

grabzIt.SaveTo( "وثائق / result.docx")

هل يمكن أن تخبرني ماذا أفعل؟

طلب مجهول في 21 أغسطس 2018

مرحبًا بك في المجتمع!

عادة أ socket.gaierror: [Errno 11001] getaddrinfo فشل يحدث عندما يتم استدعاء الرمز من وراء جدار الحماية أو الوكيل. يرجى التأكد من أن التطبيق لديه حق الوصول إلى منفذ 80.

تمت الإجابة عليه بواسطة GrabzIt Support في 21 أغسطس 2018

شكرا لإجابتك.

نعم ، إنها مشكلة proxy.It يعمل بشكل جيد عندما أقوم بتغيير جهاز الكمبيوتر الآخر الذي لا يعمل الوكيل.

كيف يمكن أن تعمل مع الوكيل؟

أجاب مجهول بتاريخ 21 أغسطس 2018

ستكون هذه ميزة جديدة. نحن نبحث ما إذا كان يمكننا تغيير عميل Python لتمكين استخدام خوادم بروكسي.

إذا كان ذلك ممكنًا ، فسنعود إليك مع الإصلاح. يمكنك أن تذهب لنفسك إذا أردت كما هو الحال مع جميع عملائنا مفتوحة المصدر: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

تمت الإجابة عليه بواسطة GrabzIt Support في 21 أغسطس 2018

لقد أضفنا الميزة الجديدة. فقط قم بتنزيل ملف GrabzItClient.py واستبدل نسختك من هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

يمكنك بعد ذلك تعيين عنوان url الوكيل للخادم الوكيل الخاص بك مع إفساد طريقة SetLocalProxy الجديدة ، على سبيل المثال:

grabzIt.SetLocalProxy ( "HTTP: // 123.123.123.123: 21231")

واسمحوا لنا الآن كيف ستسير الامور وسنفعل إصدار جديد قريبا!

تمت الإجابة عليه بواسطة GrabzIt Support في 21 أغسطس 2018

شكرا لإجابتك.

أنا محل GrabzItClient.py وغيرت مصدري:

grabzIt = GrabzItClient.GrabzItClient (مفتاح التطبيق ، أسرّة التطبيق)

grabzIt.SetLocalProxy ( "HTTP: //xxx@jp.xxxxx.com: yyyyyyy@zzz.proxy.zzz.zzzzzzz.com: 8080")

grabzIt.HTMLToDOCX("<html> <body> <h1> Hello World! </h1> </body> </html>")

grabzIt.SaveTo( "وثائق / result.docx")

مستخدم:xxx@jp.xxxxx.com

كلمة السر:yyyyyyy

مخدم بروكسي:zzz.proxy.zzz.zzzzzzz.com

ميناء:8080

رسالة خطأ:

تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py" ، السطر 54 ، في <module>
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' ، اقتباس (self.request.data)))
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 1307 ، في HTTPPost
رؤوس ['Proxy-Authorization'] = 'Basic' + 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"

أجاب مجهول بتاريخ 22 آب 2018

آسف ، قد أكون تعيين وكيل خاطئ.

لقد غيرت الخادم الوكيل إلى "http: // the_other_proxy_server: port" وأصبحت رسالة الخطأ:

تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py" ، السطر 54 ، في <module>
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' ، اقتباس (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
self.send (جي اس)
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 964 ، قيد الإرسال
self.connect ()
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 940 ، في الاتصال
self._tunnel ()
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 919 ، في _tunnel
message.strip ()))
OSError: فشل اتصال النفق: مطلوب مصادقة وكيل 407

أجاب مجهول بتاريخ 22 آب 2018

تحتاج إلى تحديد اسم المستخدم وكلمة المرور الخاصين بك هكذا: http://username:password@example.com:12335

تمت الإجابة عليه بواسطة GrabzIt Support في 22 أغسطس 2018

نعم ، لقد حددت اسم المستخدم وكلمة المرور الخاصة بي (السؤال يوم الأربعاء ، 22 أغسطس ، 2018 09: 34: 43 AM) مثل:

http://username:password@example.com:12335

اسم المستخدم هو عنوان البريد الإلكتروني (xxx@jp.xxxxx.com) لذا فقد غيرت إلى xxx٪ 40jp.xxxxx.com

ولكنها رسالة الخطأ نفسها: TypeError: كائن يشبه بايت مطلوب ، وليس 'str'

أجاب مجهول بتاريخ 22 آب 2018

آسف ، فاتني ردكم السابق. أعتقد أن هذه مشكلة في Python 3 وأصدرت إصلاحًا يجب أن يحل الخطأ. يرجى تحديث GrabzItClient.py مرة أخرى من: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

تمت الإجابة عليه بواسطة GrabzIt Support في 22 أغسطس 2018

لقد استبدلت ملف python والعثور على رسالة خطأ جديدة:

تتبع (آخر مكالمة أخيرة):

ملف "GrabzIt_test.py" ، السطر 54 ، في <module>

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' ، اقتباس (self.request.data)))

ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 661 ، في HTTPPost

الرؤوس ['Proxy-Authorization'] = 'Basic' + encodedAuth

TypeError: يجب أن يكون str ، وليس بايت

أجاب مجهول بتاريخ 22 آب 2018

حسنا ، لقد فكناها intأسكي. نحن لا نستخدم Python 3 ، وهذا هو السبب الذي جعلنا نفهم ذلك. يرجى تحديث الكود الخاص بك من هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

نظرًا لأن هذا مفتوح المصدر ، فلا تتردد في تصحيح أي التزام تريد تطبيقه على Github. لأنه ليس لدينا إمكانية الوصول إلى الإعداد الخاص بك.

تمت الإجابة عليه بواسطة GrabzIt Support في 22 أغسطس 2018

شكرا جزيلا لمساعدتكم.

OSError: فشل اتصال النفق: مطلوب مصادقة وكيل 407

سأحاول تصحيح.

أجاب مجهول بتاريخ 22 آب 2018

نعتقد أننا نعرف ماهية المشكلة ، إلا أنها تتطلب إعادة كتابة بعض الكود. لذلك سوف نتصل بك عند الانتهاء. الأمل في ساعات 24.

تمت الإجابة عليه بواسطة GrabzIt Support في 22 أغسطس 2018

أعتقد أننا قمنا بإصلاح المشكلة! يمكنك الحصول على أحدث نسخة هنا: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

تمت الإجابة عليه بواسطة GrabzIt Support في 22 أغسطس 2018

شكرا للرد عليها.

رسالة خطأ جديدة:

تتبع (آخر مكالمة أخيرة):
ملف "GrabzIt_test.py" ، السطر 54 ، في <module>
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' ، اقتباس (self.request.data)))
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 629 ، في HTTPPost
h = self._getConnection ()
ملف "C: \ TEST \ GrabzIt_python \ GrabzIt \ GrabzItClient.py" ، السطر 679 ، في _getConnection
h.putheader ('تفويض الوكيل' ، 'Basic' + encodedAuth)
ملف "C: \ Program Files \ Python36 \ lib \ http \ client.py" ، السطر 1201 ، في putheader
رفع CannotSendHeader ()
http.client.CannotSendHeader

أجاب مجهول بتاريخ 22 آب 2018

لقد أجرينا بعض التحسينات الطفيفة على: https://github.com/GrabzIt/grabzit/blob/master/python/GrabzIt/GrabzItClient.py

وقد اختبرت ذلك في Python 2.7 و 3.4 و 3.6 ويعمل في جميع البيئات ، مع وبدون الوكلاء ومع الوكلاء المعتمدين.

إذا كان لا يزال لا يعمل من أجلك ، فستحتاج إلى تصحيح الكود.

تمت الإجابة عليه بواسطة GrabzIt Support في 23 أغسطس 2018

شكرا لك على الرد.

سوف تصحيح مصدر بلدي.

بالمناسبة ، هل اختبرت اسم المستخدم وهو البريد الإلكتروني مثل xxx@yyy.com؟

تم الرد عليه من قبل مجهول بتاريخ 23 أغسطس 2018

لا ، لم أكن بحاجة إلى تشفير وفك تشفير بشكل صحيح ، لذا ربما تكون هذه هي المشكلة.

تمت الإجابة عليه بواسطة GrabzIt Support في 23 أغسطس 2018