diff --git a/recipes/bbc.recipe b/recipes/bbc.recipe
index 60b302667740..01eadca9e52b 100644
--- a/recipes/bbc.recipe
+++ b/recipes/bbc.recipe
@@ -12,18 +12,20 @@ from calibre.web.feeds.recipes import BasicNewsRecipe
def serialize_image(block):
yield '
'
block = block['model']
- media = block['media']
- alt = prepare_string_for_xml(media.get('alt') or '', True)
+ img = block['image']
+ alt = prepare_string_for_xml(img.get('alt') or '', True)
for q in ('originalSrc', 'src'):
- if q in media:
- src = prepare_string_for_xml(media[q])
+ if q in img:
+ src = prepare_string_for_xml(img[q])
break
else:
- raise ValueError('No src found in media block: {}'.format(media))
+ raise ValueError('No src found in img block: {}'.format(img))
yield '
'.format(src, alt)
caption = block.get('caption')
- if caption:
- yield '
{}
'.format(prepare_string_for_xml(caption))
+ if caption and caption.get('type') == 'text':
+ yield '
'
+ yield from serialize_paragraph(caption)
+ yield '
'
yield '
'
@@ -102,7 +104,7 @@ def parse_article_json(root, abort_article):
lines.append('