谷歌云自然语言API用法 - 分析HTML情绪
问题描述:
我想使用谷歌自然API来分析新闻内容给它的HTML地址,使用的API的功能之一,我的代码如下:谷歌云自然语言API用法 - 分析HTML情绪
from google.cloud import language
def sentiment(HTML):
client=language.Client()
document=client.document_from_html(HTML)
sent_analysis=document.analyze_sentiment()
senti = sent_analysis.sentiment
print ('Score',senti.score,'Magnitude',senti.magnitude)
if __name__ == '__main__':
senti=sentiment('http://www.marketwatch.com/story/amazon-adding-1000-full-time-jobs-with-michigan-fulfillment-center-2017-09-14?siteid=yhoof2&yptr=yahoo')
结果总是0,无论我传入哪些新闻页面,它似乎都没有做任何事情。我如何使用它有什么问题?
答
你实际分类的是网址,而不是其内容。该HTML
内容类型意味着它会剥去任何格式存在于文本,所以如果你有这样的:
<h1>HTML Ipsum Presents</h1>
<p><strong>Pellentesque habitant morbi tristique</strong> senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. <em>Aenean ultricies mi vitae est.</em> Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, <code>commodo vitae</code>, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, sagittis tempus lacus enim ac dui. <a href="#">Donec non enim</a> in turpis pulvinar facilisis. Ut felis.</p>
它会删除所有的HTML标签。
的一篇文章中的内容进行分类,你需要先取水的时候,是这样的:
import requests
req = requests.get('http://www.marketwatch.com/story/amazon-adding-1000-full-time-jobs-with-michigan-fulfillment-center-2017-09-14?siteid=yhoof2&yptr=yahoo')
html = req.text
现在,这将让整个HTML文件,其中包含各种其他的废话除了文章,像<head>
。我不确定语言api在去除这个问题上有多好。