SELECT `persons`.`id`, `persons`.`name` ... FROM `persons`; SELECT `classes`.`id`, `classes`.`name` ... FROM `classes` WHERE `classes`.`id` IN (2, 3)';
这里再说下为什么需要服务端渲染,最主要解决的问题就是解决 SEO 问题了,因为 ReactVue 基于这些框架写出来的项目数据都是浏览器端动态调用后端接口获取的,包括页面的元素结构什么的都是放在 Js 文件里的。当爬虫来访问时只拿到了 <div id="app"></div> 这样一个空的 div 里边什么内容也没,十分不利于 SEO 。
有了上述的 SEO 问题,那么解决问题思路就很简单了,就是如何能让搜索引擎的爬虫爬到页面是包含了完整内容的。
from collections import defaultdict data = defaultdict(int) data['a'] += 2
print(data) # defaultdict(int, {'a': 2})
如果 data 是常规的字典类型,可就没法直接用 += 2,那如果我们需要两层嵌套时该怎么用呢?
1 2 3 4 5 6 7 8
data = defaultdict(defaultdict(int))
Traceback (most recent call last): File "/Users/aka/WorkSpace/venvs/django1.11/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3331, in run_code exec(code_obj, self.user_global_ns, self.user_ns) File "<ipython-input-25-25b6aac66099>", line 1, in <module> data = defaultdict(defaultdict(int)) TypeError: first argument must be callableorNone