google-images-download icon indicating copy to clipboard operation
google-images-download copied to clipboard

UnicodeDecodeError: 'unicodeescape' codec can't decode byte 0x5c in position 108130: \ at end of string

Open cheerup127 opened this issue 4 years ago • 1 comments

#302 issue title was changed, so I create a new issue.

I used google-images-download library by hardikvasa:master + Joeclinton1:patch-1.

I met an issue.

Unfortunately all 20 could not be downloaded because some images were not downloadable. I changed line 753.

  •     start_line = s.find("AF_initDataCallback({key: \\'ds:2\\'") - 10
    
  •    start_line = s.find("AF_initDataCallback({key: \\'ds:1\\'") - 10
    

Until 2 weeks ago, I used it well. But, recently, I met another issue.

UnicodeDecodeError: 'unicodeescape' codec can't decode byte 0x5c in position 108130: \ at end of string

I printed the object_raw. I found the missing value in last position.

... \u003dfin",null,null,"Finance",false,null,null,null,null,null,[22]\n,null,null,22]\n]\n]\n,0,null,null,null,[]\n]
I changed the index value to restoring a last charactor. I changed line 756.

  •    object_raw = str(s[start_object:end_object])
    
  •    object_raw = str(s[start_object:end_object+1])
    

... \u003dfin",null,null,"Finance",false,null,null,null,null,null,[22]\n,null,null,22]\n]\n]\n,0,null,null,null,[]\n]\n

I solved my issue in this way. If there is a problem with my method, please give me some advice.

In addition, I used code sample in this url for testing.

  • https://google-images-download.readthedocs.io/en/latest/examples.html#

from google_images_download import google_images_download #importing the library response = google_images_download.googleimagesdownload() #class instantiation arguments = {"keywords":"Polar bears,baloons,Beaches","limit":20,"print_urls":True} #creating list of arguments paths = response.download(arguments) #passing the arguments to the function print(paths) #printing absolute paths of the downloaded images

cheerup127 avatar Jun 27 '20 07:06 cheerup127

@cheerup127 your fix worked for me. Nice one!

rjc89 avatar Jun 27 '20 10:06 rjc89