Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
10230 Zobrazení

Hi,

I want to display image in my custom module from url. I have an api and I  fetched the image url such as thumbnail from it. But while doing like given below code , its not worked.  

Thanks in advance

class img(models.Model):
_name = 'img.books'

photo = fields.Binary(string='Image')

def search_button(self):
url = "https://www.googleapis.com/books/v1/volumes?q=" + isbn_no;
response = requests.get(url)
json_data = response.json()
loaded_json = json.dumps(json_data)
book = json_data['items'][0]
image_url = book["volumeInfo"]['imageLinks']['smallThumbnail'] // here contains image url such as thumbnail
            
img_obj =Image.open(BytesIO(image_url.content))
buffer = BytesIO()
img_obj.save(buffer, format="JPEG")
img = base64.b64encode(buffer.getvalue().strip())
self.photo = img


Avatar
Zrušit
Nejlepší odpověď

Hi,

Try to rewrite your code like below

import base64
import requests

class img(models.Model):
_name = 'img.books'

photo = fields.Binary(string='Image')

def search_button(self):
url = "https://www.googleapis.com/books/v1/volumes?q=" + isbn_no;
response = requests.get(url)
json_data = response.json()
loaded_json = json.dumps(json_data)
book = json_data['items'][0]
image_url = book["volumeInfo"]['imageLinks']['smallThumbnail'] // here contains image url such as thumbnail
img = base64.b64encode(requests.get(image_url).content)
            self.photo = img

Regards

Avatar
Zrušit
Autor

Thank you Cybrosys Techno Solutions.....

Its working

Related Posts Odpovědi Zobrazení Aktivita
2
čvc 22
12070
0
úno 21
1913
5
kvě 25
33915
0
lis 23
1925
0
říj 23
1544