我试图使用BASH中的程序cURL来下载网页的源代码。当页面使用比简单HTML更复杂的编码时,尝试下载页面代码时遇到困难。比如我想用下面的命令来查看以下页面的源代码:cURL - 扫描网站的源代码
curl "http://shop.sprint.com/NASApp/onlinestore/en/Action/DisplayPhones?INTNAV=ATG:HE:Phones"
然而这并没有匹配的Firefox生成的源代码的结果,当我点击“查看源文件”。我相信这是因为页面上有Javascript元素,但我无法确定。
举例来说,我不能这样做:
curl "http://shop.sprint.com/NASApp/onlinestore/en/Action/DisplayPhones?INTNAV=ATG:HE:Phones" | grep "Access to 4G speeds"
虽然这句话在Firefox的来源显然是找到。我尝试翻阅手册页,但是我对这个问题的了解不够充分,无法找出可能的解决方案。
一个可取的答案将包括为什么这不按我期望的方式工作,以及从Linux机器使用curl或其他工具可执行文件的问题的解决方案。
编辑:
在下面的建议,我也包括在内,但没有成功一个用户代理切换:
curl "http://shop.sprint.com/NASApp/onlinestore/en/Action/DisplayPhones?INTNAV=ATG:HE:Phones" -A "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.3) Gecko/20100423 Ubuntu/10.04 (lucid) Firefox/3.6.3" | grep -i "Sorry"
权埃沃下 - 更多视图\t HTC EVO™4G *接入到4G的速度是比3G高达10倍的速度更快 *双模3G/4G设备,获得可靠的3G – Ryan 2010-06-19 02:09:45
谢谢吨!!如果你有第二个问题,我的最后一个问题是,如果这个cookie会持续足够长的时间来运行一段时间的脚本?或者我将不得不再次自动下载这个cookie? – Ryan 2010-06-19 02:27:44