पीडीएफ के लिए एक साइट को पार्स करें


2

मुझे एक साइट पर मौजूद सभी पीडीएफ फाइलों को डाउनलोड करने की आवश्यकता है। समस्या यह है कि वे किसी एक पृष्ठ पर सूचीबद्ध नहीं हैं, इसलिए मुझे साइट को क्रॉल करने और फ़ाइलों को डाउनलोड करने के लिए, या कम से कम फ़ाइलों की सूची प्राप्त करने के लिए कुछ (एक कार्यक्रम? एक रूपरेखा) की आवश्यकता है। मैंने WinHTTrack की कोशिश की, लेकिन मैं इसे काम नहीं कर सका। फ़ायरफ़ॉक्स के लिए DownThemAll कई पृष्ठों या संपूर्ण साइटों को क्रॉल नहीं करता है। मुझे पता है कि वहाँ एक समाधान है, क्योंकि मैं संभवतः इस समस्या को प्रस्तुत करने वाला पहला व्यक्ति नहीं हो सकता था। आप क्या सुझाव देंगे?

जवाबों:


4

क्या साइट Google द्वारा अनुक्रमित है? आप बस खोज सकते हैं site:www.example.com filetype:pdf और यह उस साइट पर अनुक्रमित सभी पीडीएफ फाइलों को वापस कर देगा।

उदाहरण: साइट: en.wikipedia.org filetype: pdf


इसे करने का एक और तरीका है, wget का उपयोग करके, जो एक * nix कमांड लाइन टूल है, लेकिन विंडोज़ के लिए उपलब्ध है। पुनरावर्ती मोड का उपयोग करके और केवल पीडीएफ फाइलों को बचाने के लिए निर्दिष्ट करके, यह एक साइट को पीछे छोड़ सकता है और सभी पीडीएफ को ढूंढ सकता है।

wget.exe -r -A pdf -np http://www.example.com/ example.com से पुन: सभी पीडीएफ फाइलों को डाउनलोड करेगा, और मूल निर्देशिका में जाने का प्रयास नहीं करेगा (केवल तब ही प्रासंगिक होगा जब आप किसी विशिष्ट उपनिर्देशिका में शुरू करना चाहते हैं)।

मैंने वास्तव में केवल पहले एक विशिष्ट फ़ाइल टाइप के साथ WGET का उपयोग करके परीक्षण नहीं किया है, लेकिन मैंने पहले पुनरावर्ती डाउनलोड किए हैं और यह ठीक काम किया है, इसलिए आप इसे आज़माना चाहते हैं।


यह बहुत अच्छा है, मैं विग का उपयोग करना पसंद करूंगा। मुसीबत यह है कि, विचाराधीन साइट एक Drupal आधारित साइट है जहाँ PDF के लिंक .pdf के बजाय संख्या में समाप्त होते हैं। तो, यह wget कमांड तब तक काम नहीं करता है जब तक कि साइट पर सभी स्याही के फिलाटाइप को मैन्युअल रूप से जांचने के लिए wget बताने का कोई तरीका नहीं है। शायद कुछ - html-extension लेकिन PDFs के लिए? मैंने wget डॉक्स पर देखा linux.die.net/man/1/wget और मैंने ऐसा कुछ नहीं देखा। इसके अलावा, साइट Google द्वारा खराब रूप से अनुक्रमित है, इसलिए मैं यह सुनिश्चित करने के लिए खुद को क्रॉल करना चाहूंगा कि मुझे सब कुछ मिल जाए।
user43112

2

मैं आपको इस्तेमाल करने की सलाह दे सकता हूं jsoup, Java HTML Parser यदि आप जावा से परिचित हैं या BeautifulSoup यदि आप पायथन से परिचित हैं।

अगली बार जो करें, उसे लिखें:

  1. पृष्ठ पर सभी लिंक खोजें जिसमें "ए" और विशेषता "हाइपर" का टैग है, इसे मूल्य प्राप्त करें और डोमेन नाम के साथ लिंक की तुलना करें।
  2. लिंक पीडीएफ का विस्तार या नहीं
  3. यदि इस लिंक में पीडीएफ़ एक्सटेंशन है तो इसे डाउनलोड करें या यदि यह लिंक डोमेन के साथ मेल खाता है और फिर से वही ऑपरेशन करता है तो सामग्री प्राप्त करें।

ऐसा कुछ।


सुपरयूज़र में आपका स्वागत है। यदि आप आगे जानकारी प्रदान करने में सक्षम हैं, तो एक पुराने प्रश्न पर एक अतिरिक्त उत्तर पोस्ट करने में कुछ भी गलत नहीं है।
Der Hochstapler

thnx, ओलिवर। इसलिए मैं सिर्फ एक ही स्क्रिप्ट लिखता हूं अगर इससे पहले कि मैं उन्हें मिला तो मैं इसे संलग्न कर सकता हूं यदि ऐसा है, लेकिन कभी-कभी लोग खुद से समस्याओं को हल करना चाहते हैं;) थोड़ी सलाह
Ishikawa Yoshi

-1

यह सबसे आसान उपाय नहीं है, लेकिन यह मेरा पसंदीदा है।

अपनी खुद की मकड़ी लिखो! क्या यह साइट, पार्स पृष्ठों को पार कर गया है, और उन फ़ाइलों की तलाश करें जिन्हें आप चाहते हैं। बहुत सारी दिलचस्प चुनौतियाँ हैं जो मकड़ी लिखने के साथ आती हैं, और मुझे यह बहुत मजेदार लगा।

हालांकि यह वह नहीं हो सकता है जो आर्चर 1742 की तलाश में था, मुझे यकीन है कि कोई (शायद आर्चर 1742 भी) इस समाधान को पसंद करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.