温州麻将|温州麻将app下载
當前位置:主頁 > 資源 > 技術文章 >

腳本運行后wget網址末尾多了個%0D的坑
欄目分類:技術文章   發布日期:2019-11-30   作者:素年    來源:未知

前兩天的博客里面提到星期天那天被wget網址后多了個%0D折騰了大半天的事情我覺得還是有必要說一些,雖然問題很低級,但折騰了我那么久,或許也有人遇到這個坑,希望對他人有幫助。 因粗心被wget網址后多了個%0D折騰了大半天 有個腳本里面有段自動獲取數據的
  前兩天的博客里面提到星期天那天被wget網址后多了個%0D折騰了大半天的事情我覺得還是有必要說一些,雖然問題很低級,但折騰了我那么久,或許也有人遇到這個坑,希望對他人有幫助。
  因粗心被wget網址后多了個%0D折騰了大半天
  有個腳本里面有段自動獲取數據的內容,原先是調用python來獲取數據的,因為網頁變化了,獲取數據失敗了,我在原先的python腳本上修抓取數據、匹配的代碼,修改了n次,調試了n次,還是有問題,弄起來比較復雜,就放棄這個python腳本了,改用php來實現,很快就搞定了,在服務器里面運行php看到結果都是我想要的,一切正常。
  然后就用原先的shell腳本調用這個php的結果,再進行后續處理,結果不管執行多少次,都不會更新文件,文本內容也只是部分正常,啟用調試模式看了一下,看到如下錯誤:
  
  發現每個wget后面都多了個“%0D”,第一感覺就是腳本里面字符編碼或者是換行符的問題導致的,心里就奇怪這個shell代碼都兩年了,從沒改過,為什么現在會運行出錯?
  在服務上看腳本沒問題,又把腳本下載下來,在本地用vscode看了一下,代碼里面也沒有多余的%0D字符,換行符也是linux格式的,為啥就會出問題呢?難道系統哪里變化過了?
  然后我就死磕這個shell腳本了。
  然后我就思路驚奇的用curl替代wget,再次確認腳本里沒多余的字符,運行一下,文字內容還是一部分正確,一部分有問題,要下載的文件還是出錯,提示:curl: (3) Illegal characters found in URL
  一直就在這個怪圈里面折騰來折騰去,后來還想著在curl前對url處理一下,判斷一下是否有%0D,如果有就先去掉再下載,但這樣沒找出實際原因的處理方式不是我的作風。
  很快就過了晚飯飯點的時間了,先放一放,吃飯吧,就在吃飯的時候,不知怎么的突然清清楚楚的想起我寫那個php代碼的時候我寫換行的時候是用的“\r\n”,我想問題應該就在這里了,心里為之一振。
  趕緊吃完飯,一查,果然是,將其改為“\n”,腳本一執行,絲般順滑,什么錯誤都沒有。
  其實從一開始就懷疑是換行符的問題,但總在shell腳本上找原因去了,完全忘記shell處理的是php抓取后生成的內容了。
  這就是菜鳥耗費生命的悲劇……
  過了兩天又爬上qiang頭了
  前幾天我的所有小雞都被擋住了,我看不見它們了,也聯系不上它們了。
  做了一天的遷移工作。
  今天上午又在香港腳那里買了只小雞,在路由器里的插件上將小雞相關信息填入后,渾身都不癢了、舒坦。

相關熱詞:

下一篇:沒有了
Copyright © 2016-2020 我愛分享網 版權所有   豫ICP備16008703號-1   關于我們 | 廣告合作 | 版權聲明 | 意見反饋 | 聯系方式 | 原創投稿 | 網站地圖 |
特效 教程 資源 資訊 福利
温州麻将 下载新浪体育 贵州快三基本走势图图表 捷克酷喜乐彩铅 3d走势图带连线 广东十一选五开奖视屏 秒升怎么赚钱 广西快乐双彩走势图软件 安徽11选5遗漏查询 百家乐预测最好的分析工具 足球比分007