
OnionSearch एक स्क्रिप्ट है जो विभिन्न .onion सर्च इंजनों पर URLs को स्क्रेप करती है।
👋 नमस्ते! किसी भी पेशेवर पूछताछ या सहयोग के लिए, कृपया मुझसे यहाँ संपर्क करें: [email protected]
📧 कृपया पत्राचार के लिए अपने पेशेवर ईमेल का उपयोग करें। इसे छोटा और मीठा रखें, और सभी अंग्रेजी में!
OnionSearch एक Python3 स्क्रिप्ट है जो विभिन्न ".onion" सर्च इंजनों पर यूआरएल स्क्रैप करती है।


pip3 install onionsearch
git clone https://github.com/megadose/OnionSearch.git
cd OnionSearch/
python3 setup.py install
सहायता:
usage: onionsearch [-h] [--proxy PROXY] [--output OUTPUT]
[--continuous_write CONTINUOUS_WRITE] [--limit LIMIT]
[--engines [ENGINES [ENGINES ...]]]
[--exclude [EXCLUDE [EXCLUDE ...]]]
[--fields [FIELDS [FIELDS ...]]]
[--field_delimiter FIELD_DELIMITER] [--mp_units MP_UNITS]
search
positional arguments:
search The search string or phrase
optional arguments:
-h, --help show this help message and exit
--proxy PROXY Set Tor proxy (default: 127.0.0.1:9050)
--output OUTPUT Output File (default: output_$SEARCH_$DATE.txt), where $SEARCH is replaced by the first chars of the search string and $DATE is replaced by the datetime
--continuous_write CONTINUOUS_WRITE
Write progressively to output file (default: False)
--limit LIMIT Set a max number of pages per engine to load
--engines [ENGINES [ENGINES ...]]
Engines to request (default: full list)
--exclude [EXCLUDE [EXCLUDE ...]]
Engines to exclude (default: none)
--fields [FIELDS [FIELDS ...]]
Fields to output to csv file (default: engine name link), available fields are shown below
--field_delimiter FIELD_DELIMITER
Delimiter for the CSV fields
--mp_units MP_UNITS Number of processing units (default: core number minus 1)
[...]
डिफ़ॉल्ट रूप से, स्क्रिप्ट mp_units = cpu_count() - 1 पैरामीटर के साथ चलेगी। इसका मतलब है कि यदि आपके पास 4 कोर वाली मशीन है,
तो यह 3 स्क्रैपिंग फ़ंक्शन समानांतर में चलाएगा। आप mp_units को किसी भी मान पर सेट कर सकते हैं, लेकिन इसे डिफ़ॉल्ट पर छोड़ने की अनुशंसा की जाती है।
आप इसे 1 पर सेट कर सकते हैं ताकि सभी अनुरोध क्रमिक रूप से चलें (मल्टी-प्रोसेसिंग सुविधा को अक्षम करना)।
कृपया ध्यान दें कि CSV फ़ाइल में लगातार लिखने का मल्टीप्रोसेसिंग सुविधा के साथ भारी परीक्षण नहीं किया गया है और इसलिए यह अपेक्षानुसार काम नहीं कर सकता है।
यह भी ध्यान दें कि जब mp_units 1 से अधिक होता है तो प्रगति पट्टियाँ ठीक से प्रदर्शित नहीं हो सकती हैं।
इसका परिणामों पर कोई प्रभाव नहीं पड़ता, इसलिए चिंता न करें।
"computer" शब्द के लिए सभी इंजनों का अनुरोध करने के लिए:
onionsearch "computer"
"computer" शब्द के लिए "Ahmia" और "Candle" को छोड़कर सभी इंजनों का अनुरोध करने के लिए:
onionsearch "computer" --exclude ahmia candle
"computer" शब्द के लिए केवल "Tor66", "DeepLink" और "Phobos" का अनुरोध करने के लिए:
onionsearch "computer" --engines tor66 deeplink phobos
पिछले जैसा ही, लेकिन प्रति इंजन लोड करने के लिए पृष्ठों की संख्या 3 तक सीमित करना:
onionsearch "computer" --engines tor66 deeplink phobos --limit 3
कृपया ध्यान दें कि समर्थित इंजनों (और उनकी कुंजियों) की सूची स्क्रिप्ट सहायता (-h) में दी गई है।
डिफ़ॉल्ट रूप से, फ़ाइल प्रक्रिया के अंत में लिखी जाती है। फ़ाइल CSV स्वरूपित होगी, जिसमें निम्नलिखित कॉलम होंगे:
"engine","name of the link","url"
आप --fields और --field_delimiter पैरामीटर का उपयोग करके आउटपुट फ़ाइल में क्या फ्लश होगा, इसे अनुकूलित कर सकते हैं।
--fields आपको आउटपुट फ़ील्ड्स को जोड़ने, हटाने, पुनर्क्रमित करने की अनुमति देता है। डिफ़ॉल्ट मोड नीचे दिखाया गया है। इसके बजाय, आप उदाहरण के लिए चुन सकते हैं:
"engine","name of the link","url","domain"
--fields engine name link domain सेट करके।
या आप चुन सकते हैं:
"engine","domain"
--fields engine domain सेट करके।
ये उदाहरण हैं लेकिन कई संभावनाएँ हैं।
अंत में, आप CSV विभाजक (डिफ़ॉल्ट रूप से अल्पविराम) को भी संशोधित कर सकते हैं, उदाहरण के लिए: --field_delimiter ";"।
फ़ाइल नाम डिफ़ॉल्ट रूप से output_$DATE_$SEARCH.txt पर सेट होगा, जहाँ $DATE वर्तमान दिनांक-समय और $SEARCH खोज स्ट्रिंग के पहले
अक्षरों को दर्शाता है।
आप स्क्रिप्ट चलाते समय --output का उपयोग करके इस फ़ाइल नाम को संशोधित कर सकते हैं, उदाहरण के लिए:
onionsearch "computer" --output "\$DATE.csv"
onionsearch "computer" --output output.txt
onionsearch "computer" --output "\$DATE_\$SEARCH.csv"
...
(ध्यान दें कि डॉलर वर्ण को एस्केप करना आवश्यक हो सकता है।)
उत्पादित CSV फ़ाइल में, नाम और URL स्ट्रिंग्स को यथासंभव साफ किया जाता है, लेकिन फिर भी कुछ समस्याएँ हो सकती हैं...
आप आउटपुट में क्रमिक रूप से लिखना चुन सकते हैं (अंत में सब कुछ लिखने के बजाय, जो कुछ गलत होने पर परिणाम खोने से रोकेगा)। ऐसा करने के लिए आपको --continuous_write True का उपयोग करना होगा, ठीक इस प्रकार:
onionsearch "computer" --continuous_write True
फिर आप स्क्रैपिंग के परिणामों को सक्रिय रूप से देखने या मॉनिटर करने के लिए tail -f (tail follow) Unix कमांड का उपयोग कर सकते हैं।