tags: Tips

写在前面

最近有朋友问我如何快速找到一些编程问题的解决方案, 当然也包括搜索一些网络资源(如书籍等), 感觉自己用Google也有一段时间了, 可以好好总结一下然后回答这个问题了.

搜索引擎的话我现在肯定是只用Google的, 当然一些情况下我也会用bing(毕竟广告还是要少一些), 百度的话估计只用来找一些文库资源了(下载PPT模板), 除此之外好像没什么能用到百度的地方…

关于一些专业知识, 除了看课本, Wikipedia也是不错的选择, 虽然中文页面相对匮乏, 但是其内容的高质量和准确性以及精美的插图还是让人赞不绝口.

编程方面的问题, 主要还是通过Stack Overflow来查, 虽然有时候遇到的问题都是有10多年历史的老问题, 但是也不乏很多热心的开发者给出自己的见解和方案, 并且你遇到的99.99%的问题在这上面都有人遇到过, 只是环境/平台等会有所出入而已. 除此之外, GitHubissue也是一个不错的选择, 通过issue能看到很多热门开源项目中别人遇到的问题, 以及开发者给出的解决方法, 适合一些活跃的开源项目.

资源方面, 其实还是术业有专攻, 因为Google对版权很重视(谷歌图书!?), 想在上面搜盗版其实并不容易, 还是通过一些其他专用网站来搜索要好点.

下面从选择搜索引擎/关键词搜索/常用资源查找等几个方面具体讲一下. 并且给出一些镜像替代网站, 希望能对大家有所帮助.

选择搜索引擎

这里给出两种, 分为中文和英文搜索, 一般来说编程问题还是通过英文搜索要准确很多, 但是前提是你要知道这些问题的正确英文表达, 建议还是通过Wikipedia先了解一下英文名词的表达, 然后再搜索会得到更贴切的回答.

中文

中文的话其实Bing和google都可, 内容以及准确性上, 只要你关键词到位了, 加上一些搜索技巧(后面说), 就能快速找到你要的内容了. (最好别看百度百科, 有的会有问题, 然后讨论区提了之后都没人管理, 建议看Wikipedia)

但是用Google可能会找到很多爬虫网站, 这里的爬虫网站指的是通过爬取别人文章构成的网站, 我的文章就有很多被爬取了…

不管怎么说, 只要你用中文搜索编程问题, 无外乎这么几种网站:

  • CSDN
  • 博客园
  • 知乎
  • 简书
  • 个人GitHub站点
  • 51CTO
  • 华为云,腾讯云,等一众搬运网站…

而且里面的内容也是天下文章一大抄, 质量很高的内容有但是较少. 当然, 这些网站对于我这样的编程新手还是很友好的, 因为去RTFM(Read the F**k ManPage)实在是让人难受, 而一篇简短的博客却能快速得到你想要的答案, (主要还是因为知识没有成体系地学下去, 不过话又说回来, 谁能记住那么多奇奇怪怪的命令? 不都是找文档吗)

英文

搜索引擎当然首推Google, 或者用duckduckgo也可(据说隐私保护比较好), 前提是有插件或者别的一些方法, 国内其实是有镜像站的, 这里列出几个:(可能会有挂掉的, 可以从网上查找最新网址)

  1. Google Public DNS;
  2. Google diversified search information - g.vovososo.com;
  3. Google (dhobi.win);
  4. Google (googe.fun);

只不过搜索到的部分内容无法点击访问, 例如维基官网, 下面也给出几个维基的镜像站:

  1. 维基百科,自由的百科全书 - Baike 中文百科 - DUHOC.CN;
  2. 维基百科,自由的百科全书 (wmmirror.live);

搜索技巧

以下内容建议大家上手尝试一下, 还是很好玩的!

这里参考了谷歌官方support页面1, 博客2, 文章3.

特殊符号

一些特殊符号在Google搜索中十分重要, 因为其具有的特殊含义可能导致搜索结果并不是你想要的, 特别是编程语言中的一些符号(尤其是weird Shell)

  • ★ \bigstar ★搜索完全匹配的结果: "<内容>"双引号(英文标点)括起来的内容是搜索结果必须包含的, 如"最高的建筑".
  • ★ \bigstar ★从搜索结果中排除特定字词: 在要排除的字词前加上 -。例如:中国美食 -麻辣.
  • 搜索社交媒体: 在字词前加上 @ 可用于搜索社交媒体。例如:@twitter
  • 搜索特定价格: 在表示价格的数字前加上 $。例如:相机 $400
  • 搜索 # 标签: 在字词前加上 #。例如:#怀旧星期四
  • 同义词搜索: 在关键词前面加上~, 例如: 浙江 ~学院.
  • ★ \bigstar ★通配符搜索: 用*表示任意字符, 例如: 鸡飞*跳, 就会得到鸡飞狗跳.

特殊关键词

注意含有冒号的项, 在冒号两边均没有空格, 如果加上空格则指定的搜索模式无效.

  • 在某个数字范围内执行搜索: 在两个数字之间加上 ..。例如:相机$50..100
  • ★ \bigstar ★组合搜索: 在各个搜索查询字词之间加上OR。例如:马拉松 OR 比赛
  • 搜索特定网站: 在网站或网站域名前加上site:。例如:site:youtube.comsite:.gov
  • ★ \bigstar ★搜索相关网站: 在已知网址前加上related:。例如:related:github.com, 将列出 Stack Overflow - Where Developers Learn, Share, & Build … https://stackoverflow.com (google.com)等网站.
  • 查看网站的 Google 缓存版本: 在网址前加上cache:, 例如cache:math.jlu.edu.cn可以直接跳转到吉大数院官网的缓存界面, 用于找到网站更新前的信息, 当然有的网站Google不会做快照或者快照较新, 此时可以通过Internet Archive: Wayback Machine完成.
  • 搜索网站链接中包含的指定关键字: inurl:, 例如inurl:zorchp可以搜到我的CSDN主页.
  • ★ \bigstar ★搜索网站正文中包含的指定关键字: intext:, 例如intext:zorchp可以搜到我的博客, 当然也有爬虫爬到的…
  • 搜索网站标题中包含的指定关键字: intitle:, 例如intitle:zorchp可以搜索到我的博客和其他一些内容.
  • ★ ★ \bigstar\bigstar ★★搜索指定的文档类型: filetype:, 例如filetype:pdf C++并发编程实战可以搜索电子书/论文等资源, filetype:docx 开题报告模板可以搜索文档等.

搜索关键词

主要有几个情况:

  1. 编程遇到的bug;
  2. 软件安装的问题;
  3. 专业知识;(维基)

对于遇到的程序bug, 可以遵循下面的格式来搜索:(_代表空格, 括号中内容可选)

(平台)_语言_error名称_具体内容_(其他,如系统版本/语言版本/报错语句等)

例如Python报错IndentationError: unexpected indent, 就可以在google中输入:

Python IndentationError: unexpected indent

然后看排前几的Stack Overflow回答(或者其他小众网站给出的解决方案)就能解决你的问题了, 但是, 有时候也会出现一些比较复杂的情况, 比如C++模板编译出现的链式报错, 这样的错误一般来说可以先找到最先报错的内容, 进行搜索, 然后结合这些回答分析一下有哪些导致报错的原因. (遇到了就很头疼, 需要不断积攒经验)

有一些问题可能找不到合适的答案, 比如我前几天遇到的关于 C TeX \rm C\TeX CTE​X的一个问题, 就没有解答, 但是可以通过精简报错信息来搜索, 例如:

CTEx Could not open OpenType/TrueType/dfont font file simsun.ttc

这时候其实是因为一些不重要的信息影响了搜索结果, 可以改成这样:

ctex simsum  opentype font

顺着这个思路就能找到你想要的内容了. (大多数情况下)

另外, 也需要删掉语言中自带的一些符号, 比如双引号, 不然结果会很少.

资源搜索

综合资源

还是建议网盘搜索, 这里给出一些:(之前很多都收费了)

  • 熊猫搜盘_搜索直达网盘资源 (sopandas.cn);
  • 飞鱼盘搜 - 网盘搜索,云盘搜索,资源搜索 (feiyu100.cn);
  • 易搜-网盘搜索 (yiso.fun);

电子书

以Google为例, 要搜索文档或电子书(一般是开源的), 可以通过指定文件类型来完成, 上面有提到过, 通过filetype:pdf的方式, 其他方法我之前写过, 可以看看我之前的文章. 下面是两个比较新的可以用的.

  • New search - Anna’s Archive (annas-archive.org);
  • libgen;

其他的之后想到了再补充, 感觉这篇文章内容也不少了, 大家可以多动手实践一下, 善用搜索, 互联网遍地都是宝.

ref


  1. 优化网页搜索结果 - Google 搜索帮助; ↩︎

  2. How to use search like a pro: 10 tips and tricks for Google and beyond | Google | The Guardian; ↩︎

  3. Google Advanced Search - Google Tools - Library Home at Fox Valley Technical College (fvtc.edu); ↩︎

谈谈如何高效使用搜索引擎找到自己想要的内容相关推荐

  1. 提高生产力之高效使用搜索引擎

    让我帮你百度 声明:本文所讲述的技巧,在谷歌搜索引擎中使用效果最佳.在百度上其实并不太适用,原因你懂的! 摆脱伸手党,学会高效使用搜索引擎.常用的搜索方法如下: 关键词 这是大家日常用得最多的一种方法 ...

  2. 如何高效使用搜索引擎 - 善用高级搜索

    如何高效使用搜索引擎 - 善用高级搜索 1.双引号 把搜索词放在双引号中,代表完全匹配搜索,也就是说搜索结果返回的页面包含双引号中出现的所有的词,连顺序也必须完全匹配.bd和Google 都支持这个指 ...

  3. 谈谈如何高效学习开源项目

    谈谈如何高效学习开源项目 本文首发于51CTO技术栈公众号 作者 陈彩华 文章转载交流请联系 caison@aliyun.com 随着蓬勃发展的开源时代的到来,为了减少开发成本,提高开发效率,越来越多 ...

  4. python程序员工作时间_Python程序员是怎么找工作的?怎么最快时间找到自己想要的工作?...

    前言 从智联招聘爬取相关信息后,我们关心的是如何对内容进行分析,获取用用的信息. 本次以上篇文章"5分钟掌握智联招聘网站爬取并保存到MongoDB数据库"中爬取的数据为基础,分析关 ...

  5. 对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符

    题目描述 对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符. 给定一个字符串(不一定全为字母)A及它的长度n.请返回第一个重复出现的字符.保证字符串中有重复字符,字符串的长度小于等于500 ...

  6. 如何让自己的网站快速被搜索引擎找到

    摘录自http://topic.csdn.net/u/20100207/20/a491faef-7151-474c-8498-6f64c88d0479.html 我的网站淘引擎http://www.t ...

  7. 怎样在计算机上进行高级搜索,怎么用中国知网的高级检索才能准确找到自己想要的文献?...

    原标题:怎么用中国知网的高级检索才能准确找到自己想要的文献? 知网的检索方式很多,一框式检索是小伙伴们常用的方式.但需要匹配多个检索词时,小伙伴肯定会用到CNKI高级检索啦.高级检索可以帮助小伙伴们匹 ...

  8. 总是搜不到想要的内容?Elasticsearch搜索排名优化了解一下

    导语 | Elasticsearch(下文简称ES) 是当前热门的开源全文搜索引擎,利用它我们可以方便快捷搭建出搜索平台,但通用的配置还需要根据平台内容的具体情况做进一步优化,才能产生令用户满意的搜索 ...

  9. IDEA快速搜索你想要的内容,例如注释...

    在IDEA想搜一个注释或者一小段代码,使用了 shift+shift 发现并不是那么的好用,那么就用这一招吧! Edit -> Find -> Find in Files- 我们就可以在这 ...

最新文章

  1. 如何用公式化思维?几个经典公式收集
  2. symfony2是什么?
  3. 2018中国自动驾驶市场专题分析
  4. 亚洲诚信带你玩转[2018国家网络安全宣传周]上海地区活动!
  5. javaScript面向对象表示
  6. 马哥运维学习作业(二)
  7. Django模板语言中的自定义方法filter过滤器实现web网页的瀑布流
  8. 第四十一期:从Windows到鸿蒙——操作系统的前世与今生
  9. python中一切数据都是对象吗_Python 对象中的数据类型
  10. PostgreSQL 12系统表(3)pg_tablespace
  11. 解决: Windows下启动Redis失败
  12. win7 计算机定时关机脚本,win7定时关机设置及命令
  13. linux chmod 755
  14. 201871010114-李岩松《面向对象程序设计(java)》第四周学习总结
  15. Ubuntu中禁用触摸板
  16. Java的学习之路Day08
  17. 讨论一下微信小程序中如何长按识别图片中二维码跳转
  18. win7下Elasticsearch、Kibana安装
  19. Oracle 反向键索引的原理和用途(减少索引热点块)
  20. Linux窗口和Win命令窗口查看mysql bit类型的值

热门文章

  1. 写给未来宽带运营商的一封信(转)
  2. 【02 英语语法:复句的语法】
  3. python网络编程smtp协议发送电子邮件
  4. sql coalesce
  5. java random函数用法_JAVA的Random类的用法详解
  6. HTML语言基本语法规范
  7. 【路径规划】基于matlab A_star算法机器人动态避障【含Matlab源码 2571期】
  8. 如何实现文件共享,文件共享的设置方法-镭速
  9. AI动漫作画强势来袭,漫画艺术将遭遇重创?
  10. something just歌词用计算机,Something Just Like This歌词