Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def resolve_captcha(self):
- try:
- self.driver.find_element_by_id('imgCaptcha')
- except NoSuchElementException:
- return True
- size_image = 1360, 900
- element = self.driver.find_element_by_id('img_container')
- location = element.location
- size = element.size
- png = self.driver.get_screenshot_as_png()
- im = Image.open(BytesIO(png))
- im.thumbnail(size_image, Image.ANTIALIAS)
- left = location['x']
- top = location['y']
- right = location['x'] + size['width']
- bottom = location['y'] + size['height']
- im = im.crop((left, top, right, bottom))
- im.save('/tmp/screenshot.png')
- files = {'file': open('/tmp/screenshot.png', 'rb')}
- data = {'key': KEY}
- response = requests.post(
- URL_POST_CAPTCHA,
- files=files,
- data=data,
- timeout=15
- )
- if response.ok:
- time.sleep(15)
- id_message = response.text.split('|')[-1]
- resolved_captcha = requests.get(
- '{}?key={}&action=get&id={}'.format(
- URL_GET_CAPTCHA,
- KEY,
- id_message
- ),
- timeout=15
- )
- message = resolved_captcha.text.split('|')[-1]
- self.driver.find_element_by_id('captcha').send_keys(message)
- self.driver.find_element_by_css_selector('input[type="button"]').\
- click()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement