2010-09-09 100 views
0

我想下載一些遠程頁面。源代碼中有很長的一行。 curl和wget都下載文件,但決定錯過這一行。是否有另一個命令行實用程序,我可以使用和/或沒有人知道我可以如何解決這個問題。使用wget和捲曲的網頁奇怪的下載

編輯: 我可以澄清,我已經試過wget和捲曲,並且這兩個文件都錯過了這一行。

編輯:

[[email protected] scripts]$ curl --version 
curl 7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 
Protocols: tftp ftp telnet dict ldap http file https ftps 
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz 
[[email protected] scripts]$ wget --version 
GNU Wget 1.11.4 Red Hat modified 

Copyright (C) 2008 Free Software Foundation, Inc. 
License GPLv3+: GNU GPL version 3 or later 
<http://www.gnu.org/licenses/gpl.html>. 
This is free software: you are free to change and redistribute it. 
There is NO WARRANTY, to the extent permitted by law. 

Originally written by Hrvoje Niksic <[email protected]>. 
Currently maintained by Micah Cowan <[email protected]>. 
+0

你怎麼知道這條線真的存在? – recursive 2010-09-09 14:11:34

+0

我轉到http://mysite.com/page.html ...查看源代碼... – Simon 2010-09-09 14:14:30

+0

如果您使用瀏覽器查看DOM源,它可能與實際中的內容不一樣源從服務器下載。例如,Javascript可以在文檔下載完成後對其進行轉換。 – recursive 2010-09-09 14:16:56

回答

1

沒有關於發生了什麼二可能的解釋:

  1. 服務器着眼於用戶代理,並決定不加入這一行。這兩者的可能性較小,但wget允許您更改用戶代理字符串,因此您應該能夠輕鬆解決它。
  2. 長行在客戶端上使用JavaScript構建。這很可能,但不幸的是,對於你來說,在命令行環境中不容易複製。

要驗證,請使用工具(如Fiddler)來查看電線上實際發生的情況。

+0

我正在查看頁面的未呈現的源代碼。 – Simon 2010-09-09 14:30:49

+0

你是怎麼做到的?如果您使用瀏覽器加載頁面,然後從菜單中選擇「查看源代碼」,那麼您將不*看到來自服務器的原始字節。 – Anon 2010-09-09 15:32:50

-2

爲什麼不使用捲曲OR wget的?兩者都是很好的工具!

0

wget/curl的寫入版本。這條線的長度是多少?

+0

請參閱評論。謝謝。 – Simon 2010-09-09 14:29:26