精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

搜代碼,再也不用上谷歌復制粘貼了

開發 開發工具
先問大家一個問題,如果你擼代碼的過程中遇到了一個問題不知道怎么解決,你一般會怎么辦?

 先問大家一個問題,如果你擼代碼的過程中遇到了一個問題不知道怎么解決,你一般會怎么辦?

那當然是搜了,去哪里搜呢?

比如這里我就想知道 Python 里面怎么使用 requests 怎么上傳文件,我可能就直接 Google 一下,結果有很多,比如官方文檔,Stack Overflow 等等,然后一個個去查。

比如我可能就會輸入關鍵詞 python requests upload file,查到的結果類似如下:

“抄”代碼,再也不用上谷歌復制粘貼了

這里給我的第一個結果是 Stack Overflow,結果鏈接為 https://stackoverflow.com/questions/22567306/python-requests-file-upload,我把它點開,然后找到最高票的答案。

“抄”代碼,再也不用上谷歌復制粘貼了

這里最高票的答案如圖瑣事,然后把它的代碼 copy 下來試試看看,然后就跑通了。

不過似乎還是有一點麻煩的?開瀏覽器,開 Google 或 Stack Overflow,找最高票答案試試。

介紹

今天給大家介紹一個神器,叫做 howdoi,有了它,似乎我們就可以告別 Stack Overflow 了。

下面我們就先來看看 howdoi 能做點什么,安裝了之后,我們就能直接輸入這樣的命令,比如:

  1. howdoi python requests upload file 

它給我的返回結果就是這樣:

  1. files = {'upload_file': open('file.txt','rb')}values = {'DB''photcat''OUT''csv''SHORT''short'
  2. r = requests.post(url, files=files, data=values) 

比如我想搜 python 怎么發送 POST 請求,輸入這樣的命令:

  1. howdoi python requests post 

返回結果就是這樣:

  1. >>> importrequests>>> r = requests.post('http://httpbin.org/post', json={"key""value"})>>> r.status_code200>>> r.json{'args': {}, 'data''{"key": "value"}''files': {}, 'form': {}, 'headers': {'Accept''*/*''Accept-Encoding''gzip, deflate''Connection''close''Content-Length''16''Content-Type''application/json''Host''httpbin.org''User-Agent''python-requests/2.4.3 CPython/3.4.0''X-Request-Id''xx-xx-xx'}, 'json': {'key''value'}, 'origin''x.x.x.x''url''http://httpbin.org/post'

看起來還不錯對不對。

比如我想搜 Python 里面怎么把 timestamp 轉 datetime,輸入這樣的命令:

  1. howdoi python timestamp to datetime 

返回結果就是這樣:

  1. fromdatetimeimportdatetimets = int("1284101485"
  2. if you encounter a "year is out of range" error the timestamp# may be in milliseconds, try `ts /= 1000` in that caseprint(datetime.utcfromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')) 

那 Java 它會嗎?試試看:

  1. howdoi java timestamp to datetime 

返回結果就是這樣:

  1. Timestampstamp =newTimestamp(System.currentTimeMillis);Datedate =newDate(stamp.getTime);System.out.println(date); 

有點牛逼啊,搜啥答案都有,準確率還蠻高。

以上是怎么實現的?沒錯,就是借助于 howdoi 這個項目。

howdoi

那么這個 howdoi 究竟是個什么?我們 GitHub 上就能找到,鏈接地址為:https://github.com/gleitz/howdoi。

看下簡介:

Are you a hack programmer? Do you find yourself constantly Googling for how to do basic programming tasks?

Suppose you want to know how to format a date in bash. Why open your browser and read through blogs (risking major distraction) when you can simply stay in the console and ask howdoi.

意思就是說,如果你想搜一些編程相關的解決方案,我們可以不用再去開瀏覽器,然后再去讀文檔或者博客,你可以通過 howdoi 就能直接得到答案。

操作就是上面我們講的。

howdoi 是一個 Python 項目,我們可以 pip 命令安裝:

  1. pip3 install howdoi 

如果是 Mac 的話,推薦使用 brew 來安裝:

  1. brew install howdoi 

安裝完了就能使用 howdoi 命令了。

完整用法如下:

  1. usage: howdoi.py [-h] [-p POS] [-a] [-l] [-c] [-j] [-n NUM_ANSWERS] [-C] [-v] [-e ENGINE] QUERY [QUERY ...] 
  2. instant coding answers via the command line 
  3. positional arguments: QUERY the question to answer 
  4. optional arguments: -h, --help show thishelp messageandexit -p POS, --pos POS selectanswerinspecified position (default:1) -a, --all display the full text of the answer -l, --link display only the answer link -c, --color enable colorized output -j, --json-output returnanswersinraw json format, to prettyprinttry'howdoi pretty print json command line' -n NUM_ANSWERS, --num-answers NUM_ANSWERS number of answers to return -C, --clear-cache clear the cache -v, --version displays the current version of howdoi -e ENGINE, --engine ENGINE change search engine forthisquery only.Currentlysupported engines: google (default), bing, duckduckgo. 

但一般來說就按照前文所演示的直接輸入問題就行了。

比如看看怎樣在 Python 中打印 traceback,這么搜:

  1. howdoi printstack trace python 

結果如下:

  1. importtraceback 
  2. try: raiseTypeError("Oups!")exceptException, err: try: raiseTypeError("Again !?!") except: pass 
  3.  traceback.print_exc 

不錯不錯。

原理

這時候大家可能就有疑問了,這到底是怎么實現的?為什么還能這么精準。

其實看下源碼就知道了,我們稍微扒下看看,其實源碼就都在這里了:https://github.com/gleitz/howdoi/blob/master/howdoi/howdoi.py。

先看看一上來定義了這么多:

  1. SUPPORTED_SEARCH_ENGINES = ('google''bing''duckduckgo'
  2. URL = os.getenv('HOWDOI_URL') or'stackoverflow.com' 
  3. USER_AGENTS = ('Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:11.0) Gecko/20100101 Firefox/11.0''Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100 101 Firefox/22.0''Mozilla/5.0 (Windows NT 6.1; rv:11.0) Gecko/20100101 Firefox/11.0', ('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.5 (KHTML, like Gecko) ' 'Chrome/19.0.1084.46 Safari/536.5'), ('Mozilla/5.0 (Windows; Windows NT 6.1) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.46' 'Safari/536.5'), )SEARCH_URLS = { 'bing': SCHEME + 'www.bing.com/search?q=site:{0}%20{1}&hl=en''google': SCHEME + 'www.google.com/search?q=site:{0}%20{1}&hl=en''duckduckgo': SCHEME + 'duckduckgo.com/?q=site:{0}%20{1}&t=hj&ia=web'
  4. 貌似我們就懂了什么,這些答案是從搜索引擎得來的。 

然后我們再扒一扒,又看到一個關鍵的 _get_result 方法,定義如下:

  1. def_get_result(url): try: returnhowdoi_session.get(url, headers={'User-Agent': _random_choice(USER_AGENTS)}, proxies=get_proxies, verify=VERIFY_SSL_CERTIFICATE).text exceptrequests.exceptions.SSLErrorase: _print_err('Encountered an SSL Error. Try using HTTP instead of ' 'HTTPS by setting the environment variable "HOWDOI_DISABLE_SSL".\n') raisee 

看到了吧,這里就是一次 requests 發起了 get 請求,那么這個 url 究竟是怎么來的呢?我們再順著找下調用 _get_result 方法的地方:

  1. def_get_links(query): search_engine = os.getenv('HOWDOI_SEARCH_ENGINE''google') search_url = _get_search_url(search_engine) 
  2.  result = _get_result(search_url.format(URL, url_quote(query))) if_is_blocked(result): _print_err('Unable to find an answer because the search engine temporarily blocked the request. Please wait a few minutes or select a different search engine.') raiseBlockError("Temporary block by search engine"
  3.  html = pq(result) return_extract_links(html, search_engine) 

這里就是 _get_links 方法調用了 _get_result 方法,就是 search_url 的格式化結果,傳入了 URL 還有 query,其中 search_url 是 _get_search_url 方法傳入了 search_engine,search_engine 是通過環境變量 HOWDOI_SEARCH_ENGINE 獲取的,默認是 google。

好,那順著再看看 _get_search_url 的實現,定義如下:

  1. def_get_search_url(search_engine): returnSEARCH_URLS.get(search_engine, SEARCH_URLS['google']) 

很明顯了,就是 SEARCH_URLS 里面定義的,所以最后,我們就可以得到如下的搜索 URL:

  1. www.google.com/search?q=site:stackoverflow.com%20{query}&hl=en 

這里 query 就是我們搜索的內容,比如搜索 print stack trace python,構造的 URL 就是:

  1. https://www.google.com/search?q=site:stackoverflow.com%20print%20stack%20trace%20python&hl=en 

我們訪問一下就是這樣的結果:

“抄”代碼,再也不用上谷歌復制粘貼了

其實這就是借助 Google 搜索了 Stack Overflow 的內容,搜索了 python 關鍵字的內容。

然后 howdoi 就是提取了其中的 TOP 答案,然后解析一下返回即可。

 

 

責任編輯:張燕妮 來源: 今日頭條
相關推薦

2012-07-03 15:04:22

程序員

2021-12-21 09:05:46

命令Linux敲錯

2024-04-15 00:08:00

MySQLInnoDB數據庫

2020-04-30 10:45:14

IDEA代碼神器工具

2015-05-29 09:01:48

2021-06-08 07:48:26

數據 Python開發

2020-06-15 08:03:17

大文件OOM內存

2024-11-27 14:30:46

2018-10-11 15:51:32

ChromeGoogle瀏覽器

2023-11-27 17:11:02

數據庫oracle

2018-07-03 13:17:00

2019-07-23 09:08:43

Python操作系統高考

2020-10-23 12:01:03

機器學習技術C++

2020-12-18 08:23:16

安卓手機系統谷歌

2023-12-21 09:00:00

開發并發編程

2024-01-26 07:00:11

Python工具無向圖

2011-08-31 13:43:10

windows8

2021-08-13 22:38:36

大數據互聯網技術

2023-07-29 22:02:06

MyBatis數據庫配置
點贊
收藏

51CTO技術棧公眾號

色婷婷狠狠综合| 毛片av一区二区| 精品无人区乱码1区2区3区在线 | 国产精品永久免费视频| 自拍偷拍第9页| 高潮久久久久久久久久久久久久| 欧美日韩中文字幕在线| 99精品一区二区三区的区别| 五月天激情开心网| 久久国产精品99久久久久久老狼| 久久青草福利网站| 偷拍盗摄高潮叫床对白清晰| av av在线| 91精品影视| 亚洲国产精品久久久男人的天堂| 日韩激情久久| a毛片在线免费观看| 免费亚洲一区| 欧美日韩免费不卡视频一区二区三区 | 人人妻人人爽人人澡人人精品| 水蜜桃久久夜色精品一区| 9色精品在线| 日韩有码视频在线| www.中文字幕av| av不卡一区二区| 精品视频一区二区不卡| 无码播放一区二区三区| 国产一二三区在线观看| 久久久久久亚洲综合| 成人在线资源网址| 国产精品无码白浆高潮| 日韩av中文字幕一区二区| 91精品国产91久久久久久久久 | 天天影视涩香欲综合网| 一道本在线观看视频| 国产午夜在线视频| 99精品国产99久久久久久白柏| 国产综合在线观看视频| 69亚洲精品久久久蜜桃小说| 中文欧美日韩| 午夜精品久久久久久久99黑人| 99鲁鲁精品一区二区三区| 精品国产一区二区三区小蝌蚪 | 91美女高潮出水| 亚洲视频久久久| 奇米精品一区二区三区在线观看一| 欧美孕妇性xx| 日批视频免费在线观看| 欧美中文日韩| 国产精品国产福利国产秒拍| 日韩精品在线观看免费| 夜久久久久久| 91大神福利视频在线| 亚洲 欧美 视频| 国产欧美亚洲一区| 欧美在线视频观看免费网站| 中文字幕亚洲精品一区| 性伦欧美刺激片在线观看| 欧美孕妇毛茸茸xxxx| 免费av中文字幕| 日本在线不卡视频一二三区| 国产美女直播视频一区| 一区二区三区亚洲视频| 国产一区二区免费视频| 99视频免费观看| 天堂中文在线官网| 久久久久久免费| 亚洲亚洲精品三区日韩精品在线视频| 欧美激情黑人| 一区二区三区欧美激情| www.xxx麻豆| 精精国产xxxx视频在线野外| 欧美日韩一区二区在线播放| 欧在线一二三四区| 亚洲精品大全| 日韩美一区二区三区| 国产大学生视频| 99精品中文字幕在线不卡| 国产美女娇喘av呻吟久久| 亚洲aa在线观看| 亚洲av无码一区二区三区dv| 丁香啪啪综合成人亚洲小说| 麻豆传媒一区二区| 亚洲s色大片| 亚洲最大色网站| 中国极品少妇xxxx| 免费观看亚洲天堂| 精品国产1区2区3区| 亚洲AV无码国产精品| 欧美亚洲国产一区| 欧美黑人一级爽快片淫片高清| 日韩激情在线播放| 日韩av电影天堂| 亚洲成人资源在线| 国产97色在线 | 日韩| 日韩精品一级毛片在线播放| 欧美成人在线直播| 国产熟妇搡bbbb搡bbbb| 国产精品99久久精品| 国外成人性视频| 一卡二卡在线视频| 91一区在线观看| 日韩精品在线看片z| 国产精品国产亚洲精品看不卡| 麻豆免费在线| 欧美日韩卡一卡二| 精人妻一区二区三区| 自拍偷拍欧美一区| 久久久精品欧美| 青青草原国产免费| 日本高清在线观看视频| 色综合视频一区二区三区高清| 潘金莲激情呻吟欲求不满视频| 99re6热只有精品免费观看| 亚洲午夜av久久乱码| 欧美三级 欧美一级| 日韩不卡免费视频| 精品亚洲欧美日韩| av网站免费在线观看| 色视频成人在线观看免| 美女网站视频在线观看| 色琪琪久久se色| 2019中文字幕在线| 日韩中文字幕视频网| 亚洲愉拍自拍另类高清精品| 亚洲免费av一区二区三区| 成人av激情人伦小说| 久久久精品美女| 亚洲国产无线乱码在线观看| 99在线热播精品免费| 777久久精品一区二区三区无码 | 日韩欧美一级| 久久精品成人一区二区三区| 一级片视频在线观看| 成人av在线观| 无码熟妇人妻av在线电影| 国产在线一区不卡| 久久精品国产96久久久香蕉| 伊人久久中文字幕| 国产日韩欧美电影| 亚欧在线免费观看| 成人情趣视频| 国产精品美女视频网站| 高清美女视频一区| 在线中文字幕不卡| 欧美 日韩 成人| 手机精品视频在线观看| 麻豆av一区二区| 精品3atv在线视频| 国产亚洲xxx| 超碰在线97观看| 国产精品无遮挡| 玖玖爱视频在线| 99久久综合狠狠综合久久aⅴ| 国产精品久久在线观看| 999在线视频| 欧美精品三级在线观看| 国产suv精品一区二区68| 久久99久久久久久久久久久| 黄色免费高清视频| 一区二区三区四区高清视频| 久久人人爽国产| 午夜一区在线观看| 91福利社在线观看| 国产精品视频看看| 国产+成+人+亚洲欧洲自线| 国产人妻人伦精品| 欧美一级一片| 国产精品久久久精品| 麻豆最新免费在线视频| 日韩精品中文字幕一区二区三区| 五月天婷婷网站| 91麻豆视频网站| 天天干天天综合| 亚洲婷婷免费| 日韩和欧美的一区二区| 精品国产亚洲日本| 91av在线网站| 欧美日韩欧美| 国产一区二区三区观看| 日本婷婷久久久久久久久一区二区 | 精品国产拍在线观看| 99久久久久成人国产免费| 亚洲无人区一区| 中文字幕在线观看播放| 久久女同互慰一区二区三区| 波多野结衣作品集| 91成人超碰| 国产在线精品一区| 播放一区二区| 欧美激情视频一区二区三区不卡| 免费在线超碰| 欧美蜜桃一区二区三区 | 日韩高清电影免费| 国产精品久久久久久中文字 | 97在线免费观看| 草碰在线视频| 亚洲成人av片| 中文字字幕在线观看| 亚洲国产裸拍裸体视频在线观看乱了| 无码少妇一区二区| 成人一级片网址| 国产视频1区2区3区| 99精品视频免费观看| 亚洲午夜久久久影院伊人| 神马香蕉久久| 99国产高清| 色成人综合网| 国产成人免费av| 97超碰免费在线| 久色乳综合思思在线视频| 福利成人在线观看| 亚洲精品国产美女| www.四虎在线观看| 欧美挠脚心视频网站| 中文字幕精品视频在线观看| 亚洲图片欧美综合| 青娱乐免费在线视频| 国产精品欧美一区喷水| 香蕉视频久久久| 国产一区二区美女诱惑| 日韩中文字幕免费在线| 亚洲二区精品| 大地资源网在线观看免费官网| 黄色不卡一区| 久久久久久亚洲精品不卡4k岛国| 日韩一二三区在线观看| 国产美女久久精品| 澳门黄色一级片| 久久只精品国产| 国产不卡一二三| 国产成人av电影在线播放| 亚洲免费黄色录像| 日本不卡一二三区黄网| 激情视频综合网| 三级精品在线观看| 国产无套粉嫩白浆内谢的出处| 中国女人久久久| 丰满少妇久久久| 亚洲精品三级| 中文字幕无码精品亚洲35| 亚洲欧洲视频| 欧美一区二区三区爽大粗免费| 一区二区三区精品视频在线观看| 国产免费黄色一级片| 午夜日韩福利| 黄页网站大全在线观看| 国产精品久久久免费| 国产午夜伦鲁鲁| 日韩综合在线视频| 欧美日韩中文不卡| 国产一区二区三区四区五区入口| 亚洲视频在线不卡| 国产91高潮流白浆在线麻豆| 亚洲欧洲日韩综合| 成人国产精品免费网站| 黄色国产在线观看| 国产日韩欧美激情| 污污的视频在线免费观看| 一区二区三区.www| 日本一二三区不卡| 色香色香欲天天天影视综合网| 国产美女www| 91精品国产高清一区二区三区 | 久久这里只有精品8| 伊人久久大香线蕉综合热线| 97成人在线免费视频| 噜噜噜躁狠狠躁狠狠精品视频 | 日韩在线电影| 91精品久久久久久蜜桃| 国产欧美三级电影| 日韩精品伦理第一区| 国产精品7m凸凹视频分类| 欧洲美女免费图片一区| 久久精品视频日本| 午夜欧美在线一二页| 亚洲熟女综合色一区二区三区| 在线观看区一区二| 国产又大又黄的视频| 精品久久久久香蕉网| 九色视频成人自拍| 久久精品国产久精国产一老狼| 毛片大全在线观看| 美洲天堂一区二卡三卡四卡视频| 国产高清精品一区二区| 国产一级成人av| 偷拍视频一区二区| 欧美成人中文| 久久天天躁狠狠躁夜夜躁2014| 超碰在线最新| 2020久久国产精品| 亚洲美女色播| 久久久一本精品99久久精品| 欧美综合另类| 青草网在线观看| 免费亚洲电影在线| 亚洲色图欧美日韩| 国产精品乱码一区二区三区软件| 久久精品国产亚洲AV无码麻豆 | 精品久久亚洲| 看高清中日韩色视频| 亚洲影视一区二区三区| 凹凸日日摸日日碰夜夜爽1| 国产69精品一区二区亚洲孕妇 | 欧美夫妇交换xxx| 成人h版在线观看| 黄色免费一级视频| 黑人巨大精品欧美一区免费视频| 中文字幕免费高清在线观看| 精品国产伦理网| 午夜视频在线观看网站| 57pao成人永久免费视频| 国产精品亚洲一区二区在线观看| 久久久久无码国产精品一区| 中文字幕在线观看欧美| 日韩一区二区三区电影| 国产在线高清| 777精品视频| 中文字幕一区二区三区中文字幕 | 国产一区三区在线播放| 9191国产视频| 精一区二区三区| jizz中文字幕| 日韩欧美国产网站| 日韩专区第一页| 色综合视频网站| 国产精品亚洲四区在线观看| 日韩欧美高清一区| 色视频在线观看福利| 欧美国产第二页| 亚洲日日夜夜| 亚洲 日韩 国产第一区| 美女久久网站| 国产成人无码一区二区在线观看| 亚洲福利国产精品| 免费av网站在线播放| 欧美极品少妇xxxxx| 亚洲视频一起| www.18av.com| 粉嫩高潮美女一区二区三区| 91精品国产闺蜜国产在线闺蜜| 欧美挠脚心视频网站| 久操免费在线| 2019国产精品视频| 欧美视频网站| 亚洲无人区码一码二码三码| 亚洲一区二区三区四区在线观看| 超碰在线观看99| 久久久久久免费精品| 国产精品xxx在线观看| 僵尸世界大战2 在线播放| 成人黄色在线网站| 欧美三级韩国三级日本三斤在线观看| 亚洲国产91色在线| 日韩电影免费看| 日韩伦理一区二区三区av在线| 奇米一区二区三区| 我要看黄色一级片| 精品久久久久久最新网址| av岛国在线| 蜜桃传媒视频麻豆第一区免费观看| 久久精品卡一| 国产又色又爽又高潮免费 | 亚洲精品国产suv一区| 隔壁老王国产在线精品| 亚洲电影男人天堂| 久久久久久三级| 亚洲精品视频在线看| 秋霞av鲁丝片一区二区| 青草成人免费视频| 日本欧美肥老太交大片| 亚洲综合123| 午夜天堂影视香蕉久久| 国产中文在线观看| 91色琪琪电影亚洲精品久久| 亚洲一区久久| 国产艳俗歌舞表演hd| 日本韩国欧美在线| 麻豆免费在线观看| 成人18视频| 老司机一区二区三区| 精品一区二区在线观看视频| 欧美va亚洲va国产综合| 亚洲女同av| 大桥未久一区二区| 99热这里都是精品| 91精品国产综合久| 高清欧美一区二区三区| 精品亚洲永久免费| 精品三级av在线| 欧美人体一区二区三区| 中文字幕一区二区三区四区五区 | 日韩一区二区在线| 国产麻豆剧传媒精品国产| 色综合久久久久综合99| gogo在线观看| 日韩欧美精品在线不卡 | 欧美日韩在线一| 欧美国产欧美综合| 好吊色一区二区|