I am using mezzanine cms. When I scrap the data from the blogspot I got this error
blog_id: sanavitastudio
Traceback (most recent call last):
File "/home/nyros/hs/git_br/2013/Oct-9/healersource/apps/blog_hs/forms.py", line 226, in save
blog_id=blog_id)
File "/home/nyros/hs/1a9pinaxenv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 150, in call_command
return klass.execute(*args, **defaults)
File "/home/nyros/hs/1a9pinaxenv/local/lib/python2.7/site-packages/django/core/management/base.py", line 232, in execute
output = self.handle(*args, **options)
File "/home/nyros/hs/git_br/mezzanine/mezzanine/blog/management/base.py", line 172, in handle
post, created = BlogPost.objects.get_or_create(**initial)
File "/home/nyros/hs/1a9pinaxenv/local/lib/python2.7/site-packages/django/db/models/manager.py", line 134, in get_or_create
return self.get_query_set().get_or_create(**kwargs)
File "/home/nyros/hs/1a9pinaxenv/local/lib/python2.7/site-packages/django/db/models/query.py", line 452, in get_or_create
obj.save(force_insert=True, using=self.db)
File "/home/nyros/hs/git_br/mezzanine/mezzanine/core/models.py", line 221, in save
super(Displayable, self).save(*args, **kwargs)
File "/home/nyros/hs/git_br/mezzanine/mezzanine/core/models.py", line 77, in save
super(Slugged, self).save(*args, **kwargs)
File "/home/nyros/hs/git_br/mezzanine/mezzanine/core/models.py", line 46, in save
super(SiteRelated, self).save(*args, **kwargs)
File "/home/nyros/hs/git_br/mezzanine/mezzanine/core/models.py", line 116, in save
self.description = strip_tags(self.description_from_content())
File "/home/nyros/hs/git_br/mezzanine/mezzanine/core/models.py", line 146, in description_from_content
description = unicode(self)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 5: ordinal not in range(128)
Code:
import xmltest
blog_id = xmltest.blogname(self.cleaned_data['blog_id'])
print(type(blog_id))
call_command(
'import_blogger_hs',
mezzanine_user=request.user.username,
blog_id=blog_id)
return False
And blogname method for If you give blogname it will automatically scrap the blogID and it is represented as blog_id.
Ah, so now with the code the problem is most likely with
request.user.username
unfortunately the mezzanine code assumes it is receiving an ascii object (whatunicode(self)
in the stacktrace is doing) and is "double encoding" it... grrr!I would call your method the same way but do this:
Does that fix the issue?