-
Notifications
You must be signed in to change notification settings - Fork 2
/
wx_external.py
29 lines (25 loc) · 1 KB
/
wx_external.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from pyquery import PyQuery as pq
def get_article(html, url):
root = pq(html)
title = root('#activity-name').eq(0).text().strip()
el_co = root('#js_content')
el_audios = el_co.find('mpvoice')
for i in range(len(el_audios)):
el_audio = el_audios.eq(i)
name = '🔈 ' + el_audio.attr('name')
mid = el_audio.attr('voice_encode_fileid')
link = f'https://res.wx.qq.com/voice/getvoice?mediaid={mid}'
el_p = root(f'<p><a href="{link}">{name}</a></p>')
el_audio.parent().replace_with(el_p)
el_iframes = el_co.find('iframe')
for i in range(len(el_iframes)):
el_iframe = el_iframes.eq(i)
link = el_iframe.attr('data-src')
el_p = el_iframe.parent()
el_p.html(f'📹 <a href="{link}">{link}</a>')
el_p.attr('style', '')
co = el_co.html()
co = f'''
<blockquote>原文:<a href="{url}">{url}</a></blockquote>{co}
'''
return {'title': title, 'content': co}