当前位置: 首页 > news >正文

怎么样做外贸网站企业办公软件排名

怎么样做外贸网站,企业办公软件排名,网站开发产生费用分录怎么写,手机网站导航插件目录 17.2.2 添加自定义工具提示 bar_descriptions.py 17.2.3 根据数据绘图 python_repos.py 17.2.4 在图表中添加可单击的链接 python_repos.py 17.3 Hacker News API hn_submissions.py 17.4 小结 往期快速传送门#x1f446;#xff08;在文章最后#xff09;在文章最后 感谢大家的支持欢迎订阅收藏专栏将持续更新 17.2.2 添加自定义工具提示 在Pygal中将鼠标指向条形将显示它表示的信息这通常称为工具提示。在这个示例中 当前显示的是项目获得了多少个星。下面来创建一个自定义工具提示以同时显示项目的描述。 来看一个简单的示例它可视化前三个项目并给每个项目对应的条形都指定自定义标签。 为此我们向add()传递一个字典列表而不是值列表 bar_descriptions.py import pygal from pygal.style import LightColorizedStyle as LCS, LightenStyle as LS my_style LS(#333366, base_styleLCS) chart pygal.Bar(stylemy_style, x_label_rotation45, show_legendFalse) chart.title Python Projects chart.x_labels [httpie, django, flask] 1 plot_dicts [ 2 {value: 16101, label: Description of httpie.}, {value: 15028, label: Description of django.}, {value: 14798, label: Description of flask.}, ] 3 chart.add(, plot_dicts) chart.render_to_file(bar_descriptions.svg) 在1处我们定义了一个名为plot_dicts的列表其中包含三个字典分别针对项目HTTPie、 Django和Flask。每个字典都包含两个键value和label。Pygal根据与键value相关联的数 字来确定条形的高度并使用与label相关联的字符串给条形创建工具提示。例如处的第 一个字典将创建一个条形用于表示一个获得了16 101颗星、工具提示为Description of httpie的 项目。 方法add()接受一个字符串和一个列表。这里调用add()时我们传入了一个由表示条形的字 典组成的列表plot_dicts见3。图17-3显示了一个工具提示除默认工具提示获得的星 数外Pygal还显示了我们传入的自定义提示。 17.2.3 根据数据绘图 为根据数据绘图我们将自动生成plot_dicts其中包含API调用返回的30个项目的信息。 完成这种工作的代码如下 python_repos.py --snip-- # 研究有关仓库的信息 repo_dicts response_dict[items] print(Number of items:, len(repo_dicts)) 1 names, plot_dicts [], [] for repo_dict in repo_dicts:names.append(repo_dict[name]) 2 plot_dict {value: repo_dict[stargazers_count],label: repo_dict[description],} 3 plot_dicts.append(plot_dict) # 可视化 my_style LS(#333366, base_styleLCS) --snip-- 4 chart.add(, plot_dicts) chart.render_to_file(python_repos.svg) 在1处我们创建了两个空列表names和plot_dicts。为生成x轴上的标签我们依然需要列 表names。 在循环内部对于每个项目我们都创建了字典plot_dict见2。在这个字典中我们使 用键value存储了星数并使用键label存储了项目描述。接下来我们将字典plot_dict附加 到plot_dicts末尾见3。在4处我们将列表plot_dicts传递给了add()。图17-4显示了生成的 图表。 17.2.4 在图表中添加可单击的链接 Pygal还允许你将图表中的每个条形用作网站的链接。为此只需添加一行代码在为每个 项目创建的字典中添加一个键为xlink的键—值对 python_repos.py --snip-- names, plot_dicts [], [] for repo_dict in repo_dicts:names.append(repo_dict[name])plot_dict {value: repo_dict[stargazers_count],label: repo_dict[description],xlink: repo_dict[html_url],}plot_dicts.append(plot_dict) --snip-- Pygal根据与键xlink相关联的URL将每个条形都转换为活跃的链接。单击图表中的任何条 形时都将在浏览器中打开一个新的标签页并在其中显示相应项目的GitHub页面。至此你对 API获取的数据进行了可视化它是交互性的包含丰富的信息 17.3 Hacker News API 为探索如何使用其他网站的API调用我们来看看Hacker Newshttp://news.ycombinator. com/。在Hacker News网站用户分享编程和技术方面的文章并就这些文章展开积极的讨论。Hacker News的API让你能够访问有关该网站所有文章和评论的信息且不要求你通过注册获得密钥。 下面的调用返回本书编写时最热门的文章的信息 https://hacker-news.firebaseio.com/v0/item/9884165.json 响应是一个字典包含ID为9884165的文章的信息 { 1 url: http://www.bbc.co.uk/news/science-environment-33524589, type: story, 2 title: New Horizons: Nasa spacecraft speeds past Pluto, 3 descendants: 141, score: 230, time: 1436875181, text: , by: nns, id: 9884165, 4 kids: [9884723, 9885099, 9884789, 9885604, 9885844] } 这个字典包含很多键如url见1和title见2。与键descendants相关联的值是 文章被评论的次数见3。与键kids相关联的值包含对文章所做的所有评论的ID见4。每 个评论自己也可能有kid因此文章的后代descendant数量可能比其kid数量多。 下面来执行一个API调用返回Hacker News上当前热门文章的ID再查看每篇排名靠前的文章 hn_submissions.py import requests from operator import itemgetter # 执行API调用并存储响应 1 url https://hacker-news.firebaseio.com/v0/topstories.json r requests.get(url) print(Status code:, r.status_code) # 处理有关每篇文章的信息 2 submission_ids r.json() 3 submission_dicts [] for submission_id in submission_ids[:30]:# 对于每篇文章都执行一个API调用 4 url (https://hacker-news.firebaseio.com/v0/item/ str(submission_id) .json)submission_r requests.get(url)print(submission_r.status_code)response_dict submission_r.json()5 submission_dict {title: response_dict[title],link: http://news.ycombinator.com/item?id str(submission_id), comments: response_dict.get(descendants, 0)}submission_dicts.append(submission_dict)7 submission_dicts sorted(submission_dicts, keyitemgetter(comments),reverseTrue) 8 for submission_dict in submission_dicts:print(\nTitle:, submission_dict[title])print(Discussion link:, submission_dict[link])print(Comments:, submission_dict[comments]) 首先我们执行了一个API调用并打印了响应的状态见1。这个API调用返回一个列表 其中包含Hacker News上当前最热门的500篇文章的ID。接下来我们将响应文本转换为一个 Python列表见2并将其存储在submission_ids中。我们将使用这些ID来创建一系列字典其 中每个字典都存储了一篇文章的信息。 在3处我们创建了一个名为submission_dicts的空列表用于存储前面所说的字典。接下 来我们遍历前30篇文章的ID。对于每篇文章我们都执行一个API调用其中的URL包含 submission_id的当前值见4。我们打印每次请求的状态以便知道请求是否成功了。 在3处我们为当前处理的文章创建一个字典并在其中存储文章的标题以及到其讨论页面 的链接。在4处我们在这个字典中存储了评论数。如果文章还没有评论响应字典中将没有键 descendants。不确定某个键是否包含在字典中时可使用方法dict.get()它在指定的键存在 时返回与之相关联的值并在指定的键不存在时返回你指定的值这里是0。最后我们将 submission_dict附加到submission_dicts末尾。 Hacker News上的文章是根据总体得分排名的而总体得分取决于很多因素其中包含被推 荐的次数、评论数以及发表的时间。我们要根据评论数对字典列表submission_dicts进行排序 为此使用了模块operator中的函数itemgetter()见7。我们向这个函数传递了键comments 因此它将从这个列表的每个字典中提取与键comments相关联的值。这样函数sorted()将根据 这种值对列表进行排序。我们将列表按降序排列即评论最多的文章位于最前面。 对列表排序后我们遍历这个列表见8对于每篇热门文章都打印其三项信息标题、 到讨论页面的链接以及文章现有的评论数 Status code: 200 200 200 200 --snip-- Title: Firefox deactivates Flash by default Discussion link: http://news.ycombinator.com/item?id9883246 Comments: 231 Title: New Horizons: Nasa spacecraft speeds past Pluto Discussion link: http://news.ycombinator.com/item?id9884165 Comments: 142 Title: Iran Nuclear Deal Is Reached With World Powers Discussion link: http://news.ycombinator.com/item?id9884005 Comments: 141 Title: Match Group Buys PlentyOfFish for $575M Discussion link: http://news.ycombinator.com/item?id9884417 Comments: 75 Title: Our Nexus 4 devices are about to explode Discussion link: http://news.ycombinator.com/item?id9885625 Comments: 14 --snip-- 使用任何API来访问和分析信息时流程都与此类似。有了这些数据后你就可以进行可视 化指出最近哪些文章引发了最激烈的讨论。 17.4 小结 在本章中你学习了如何使用API来编写独立的程序它们自动采集所需的数据并对其进 行可视化使用GitHub API来探索GitHub上星级最高的Python项目还大致地了解了Hacker News API如何使用requests包来自动执行GitHub API调用以及如何处理调用的结果。我们还简要地 介绍了一些Pygal设置使用它们可进一步定制生成的图表的外观。 在本书的最后一个项目中我们将使用Django来创建一个Web应用程序。 关于“Python”的核心知识点整理大全37-CSDN博客 关于“Python”的核心知识点整理大全25-CSDN博客 关于“Python”的核心知识点整理大全12-CSDN博客 往期快速传送门在文章最后 感谢大家的支持欢迎订阅收藏专栏将持续更新
http://www.ho-use.cn/article/10820708.html

相关文章:

  • 企业做网站有什么好处网站主机与服务器
  • 佛山技术支持 禅城企业网站互联网公司起名
  • 辉县市工程建设网站建设wordpress 论坛整合
  • 企业建设网站的步骤是什么?镇江网站建设 的公司
  • 长沙seo网站产品推广怎么做
  • 成都优化网站邯郸做企业网站改版
  • wordpress控制面板企业网站的优化方案
  • 建设电商网站需要什么硬件3d全屋定制设计软件
  • 怎么给网站做seo优化如何做线下推广
  • 助孕网站优化推广施工企业会计王玉红课后答案
  • 网站需求分析报告蓬业东莞网站建设技术支持
  • 建设网站需要哪些域名广州建设网站哪个好
  • 建设部职业资格注册中心网站赤峰网站开发red
  • 北京红酒网站建设开发网站网页归档
  • 网站虚拟空间过期免费广告推广
  • 永州冷水滩网站建设专门做装修的网站
  • 无锡网站网站建设网站开发pc版与手机版
  • 响应式网站模板免费网页版微信二维码失效了怎么恢复
  • 利用微博做网站排名百度指数api
  • 专业的o2o网站建设河南建设厅网站查证
  • 网站开发实例教程wordpress 多站 列表
  • 建设政协网站的意义wordpress时尚英文站
  • 铜陵市建设局网站深圳响应式网站制作
  • 富顺住房和城乡建设厅网站照片制作网站
  • 移动网站虚拟主机简洁中文网站模板
  • google建立网站支付宝网站登录入口
  • 学做网站需要个人博客系统源码
  • 免费成品网站模板门户网站cms系统
  • 网站备案必须是企业吗phpcms 多语言网站
  • 做网站设计挣钱吗江苏大都建设工程有限公司网站