2010-09-18 24 views

उत्तर

133

आप पृष्ठ डाउनलोड करने और के रूप में एक चर में इसे पढ़ने के लिए wget आदेश का उपयोग कर सकते हैं:

content=$(wget google.com -q -O -) 
echo $content 

हम जो जो में wget उदासीनता हमें फ़ाइल का नाम निर्दिष्ट कर सकते हैं wget की -O विकल्प का उपयोग पेज सामग्री। मानक आउटपुट पर डंप प्राप्त करने के लिए हम - निर्दिष्ट करते हैं और उस चर को content में एकत्र करते हैं। आप wget आउटपुट को बंद करने के लिए -q शांत विकल्प जोड़ सकते हैं।

आप के रूप में इस रूप में अच्छी तरह के लिए curl आदेश का उपयोग कर सकते हैं:

content=$(curl -L google.com) 
echo $content 

हम पेज हम अनुरोध कर रहे हैं स्थानांतरित कर दिया हो सकता है के रूप में -L विकल्प का उपयोग करने की जरूरत है। इस मामले में हमें पृष्ठ को नए स्थान से प्राप्त करने की आवश्यकता है। -L या --location विकल्प हमें इसके साथ सहायता करता है।

+2

मैं बताया गया है, और अपने प्रश्न के बाद से, इसलिए मेरे downvote अब और कुछ भी मतलब नहीं है ... (यह वास्तव में एक वोट दें में बदल गया) संपादित किया गया है। –

+0

यह वास्तव में एक साफ चाल है। मैं एक प्रॉक्सी सर्वर पर एक php स्क्रिप्ट के माध्यम से एक खोल स्क्रिप्ट का आह्वान करता हूं। जब पूछा गया, प्रॉक्सी सर्वर महंगा सर्वर चालू करता है जो 2 घंटों के बाद बंद हो जाता है। मुझे जेनकिंस कंसोल रिकॉर्ड पर वापस फ़ीड करने के लिए मानक आउटपुट के लिए wget से उत्पादन की आवश्यकता है। – Dennis

+0

मुझे यह अभी तक प्राप्त नहीं हुआ है ... उदाहरण के लिए, किसी को भी कैसे demostrate कर सकते हैं। इस लिंक के लिए एक चर में एक img टैग प्राप्त करें http://www2.watchop.io/manga2/read/one-piece/1/4 ?? – juggernaut1996

9

wget कमांड या curl है।

अब आप wget से डाउनलोड की गई फ़ाइल का उपयोग कर सकते हैं। या आप कर्ल के साथ एक धारा संभाल सकते हैं।


संसाधन:

2
content=`wget -O - $url` 
+2

'$ (...)' से अधिक पसंद किया जाता है '' ... '', http://mywiki.wooledge.org/BashFAQ/082 – Giacomo

+2

देख मुझे लगता है मैं मेरी उम्र दिखा रहा हूँ। दिन में वापस, सभी _we_ बैकटीक्स थे ... और हमने इसे _liked_ किया! अब मेरे लॉन से निकलें! –

+0

@rjack: (लेकिन जो लेख आपने लिंक किया है वह $ (...) वाक्यविन्यास के लिए एक बहुत अच्छा मामला बनाता है।) –

2

आप curl या wget का उपयोग कच्चे डेटा पुनः प्राप्त कर सकते हैं, या आपउपयोग कर सकते हैं एक वेब पेज का एक अच्छा पाठ प्रतिनिधित्व करने के लिए।

$ foo=$(w3m -dump http://www.example.com/); echo $foo 
You have reached this web page by typing "example.com", "example.net","example.org" or "example.edu" into your web browser. These domain names are reserved for use in documentation and are not available for registration. See RFC 2606, Section 3. 
20

वहाँ कई तरह से कमांड लाइन में एक पेज प्राप्त करने के लिए है ... लेकिन यह भी निर्भर करता है कि आप कोड स्रोत या पेज में ही हैं:

आप कोड स्रोत की जरूरत है

curl $url

wget साथ

: कर्ल के साथ wget -O - $url

लेकिन अगर आप वा NT पाने के लिए क्या आप एक ब्राउज़र के साथ देख सकते हैं, बनबिलाव उपयोगी हो सकता है: lynx -dump $url

मैं आप इस छोटे समस्या के लिए इतने सारे समाधान पा सकते हैं लगता है, हो सकता है आप उन आज्ञाओं के लिए सभी आदमी पेज पढ़ना चाहिए।और अपने URL :) द्वारा $ यूआरएल को बदलने के लिए मत भूलना

गुड लक :)

2

आप LWP स्थापित है, तो यह एक द्विआधारी बस "GET" नाम प्रदान करता है।

 
$ GET http://example.com 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<HTML> 
<HEAD> 
    <META http-equiv="Content-Type" content="text/html; charset=utf-8"> 
    <TITLE>Example Web Page</TITLE> 
</HEAD> 
<body> 
<p>You have reached this web page by typing &quot;example.com&quot;, 
&quot;example.net&quot;,&quot;example.org&quot 
    or &quot;example.edu&quot; into your web browser.</p> 
<p>These domain names are reserved for use in documentation and are not available 
    for registration. See <a href="http://www.rfc-editor.org/rfc/rfc2606.txt">RFC 
    2606</a>, Section 3.</p> 
</BODY> 
</HTML> 

wget -O-, curl, और lynx -source इसी तरह व्यवहार करते हैं।

संबंधित मुद्दे