我從本網站使用lynx轉儲拉任天堂DS價格。如何使用含有撇號的URL的lynx -dump?
例如,假設我要去從網頁拉的遊戲耀西觸摸&離開:
/usr/bin/lynx -dump -width=150 http://videogames.pricecharting.com/game/nintendo-ds/Yoshi-Touch-and-Go
一切正常,我可以使用正則表達式來輕鬆地拉動價格。問題來自URL包含撇號(')或與&符號(&),因爲這會引發錯誤。所以我們可以說我試圖找到遊戲耀西島DS的頁面,我會用這行代碼:
/usr/bin/lynx -dump -width=150 http://videogames.pricecharting.com/game/nintendo-ds/Yoshi's-Island-DS
這會給我這些小錯誤:
sh: -c: line 0: unexpected EOF while looking for matching `''
sh: -c: line 1: syntax error: unexpected end of file
下面是代碼我用$fullURL
作爲包含「http://videogames.pricecharting.com/game/nintendo-ds/Yoshi's-Island-DS」的字符串來調用轉儲。
$command = "/usr/bin/lynx -dump -width=150 $fullURL";
@pageFile = `$command`;
誰能幫我找到一個解決方案,將會把$fullURL
字符串轉換爲URL兼容的字符串?
很多人想看看[LWP](http://p3rl.org/LWP)和[LWP :: Simple](http://p3rl.org/LWP::Simple)以獲得更好的方法一個網頁的內容比使用shell調用'lynx'。 – 2012-04-24 19:31:37
我一定會記住這一點。我正在爲我的perl類中的最終項目製作一個DS價格檢查器程序,並且我們在本學期的早些時候完成了一項任務,它使用了使用lynx來轉儲頁面內容的相同方法。這就是爲什麼我也爲這個項目保持同樣的方法。我剛剛完成了它,它運行良好,雖然效率不高,需要一段時間來處理所有的遊戲。謝謝你的想法! :) – Nick 2012-04-24 20:30:22