वेब स्क्रैपिंग गोलैंग में कॉली के साथ

Rajinder Singh
Deep Learning Researcher
04-Dec-2025

वेब स्क्रैपिंग वेबसाइटों से डेटा निकालने के लिए एक विधि है। गो में, कॉली पुस्तकालय अपनी सरलता और शक्तिशाली विशेषताओं के कारण वेब स्क्रैपिंग के लिए एक लोकप्रिय उपकरण है। इस गाइड आपको गो में प्रोजेक्ट की सेटअप करने, एक बुनियादी स्क्रैपर बनाने, जटिल डेटा निकालने के मामलों के साथ निपटने और समानांतर मांगों के साथ अपने स्क्रैपर को अनुकूलित करने में मदद करेगा।
अपने गो प्रोजेक्ट की सेटअप करें
शुरू करने से पहले, अपने सिस्टम में गो स्थापित करने का निश्चित करें। निम्न आदेशों के साथ अपने प्रोजेक्ट को प्रारंभ करें और कॉली पैकेज लाएं:
bash
go mod init my_scraper
go get -u github.com/gocolly/colly
इससे आपके प्रोजेक्ट डायरेक्टरी सेट हो जाती है और कॉली पैकेज स्थापित हो जाता है।
कैपसॉल्वर बोनस कोड के साथ अपना बोनस प्राप्त करें
अपने स्वचालन बजट को तत्काल बढ़ाएं!
कैपसॉल्वर खाता भरने के दौरान बोनस कोड CAPN का उपयोग करके प्रत्येक भरोसे में 5% बोनस प्राप्त करें — कोई सीमा नहीं।
अपने कैपसॉल्वर डैशबोर्ड में अब इसे रीडीम करें
.
एक बुनियादी स्क्रैपर बनाएं
हम एक विशिष्ट विकिपीडिया पृष्ठ से सभी लिंक्स निकालने के लिए एक बुनियादी स्क्रैपर बनाएंगे।
- एक नया फ़ाइल
main.goबनाएं और निम्न कोड जोड़ें:
go
package main
import (
"fmt"
"github.com/gocolly/colly"
)
func main() {
c := colly.NewCollector(
colly.AllowedDomains("en.wikipedia.org"),
)
c.OnHTML(".mw-parser-output", func(e *colly.HTMLElement) {
links := e.ChildAttrs("a", "href")
fmt.Println(links)
})
c.Visit("https://en.wikipedia.org/wiki/Web_scraping")
}
इस कोड नए कॉली कलेक्टर को en.wikipedia.org तक सीमित करता है, फिर पृष्ठ के .mw-parser-output डिव में सभी लिंक्स को खोजने और प्रिंट करने के लिए कॉलबैक सेट करता है।
टेबल डेटा स्क्रैप करें
अधिक जटिल कार्यों जैसे टेबल डेटा स्क्रैप करने और इसे CSV फ़ाइल में लिखने के लिए, आप गो में encoding/csv पैकेज का उपयोग कर सकते हैं:
main.goको निम्न कोड के साथ विस्तारित करें ताकि टेबल डेटा स्क्रैप किया जा सके:
go
package main
import (
"encoding/csv"
"log"
"os"
"github.com/gocolly/colly"
)
func main() {
fName := "data.csv"
file, err := os.Create(fName)
if err != nil {
log.Fatalf("Could not create file, err: %q", err)
return
}
defer file.Close()
writer := csv.NewWriter(file)
defer writer.Flush()
c := colly.NewCollector()
c.OnHTML("table.wikitable", func(e *colly.HTMLElement) {
e.ForEach("tr", func(_ int, row *colly.HTMLElement) {
rowData := []string{}
row.ForEach("td", func(_ int, cell *colly.HTMLElement) {
rowData = append(rowData, cell.Text)
})
writer.Write(rowData)
})
})
c.Visit("https://en.wikipedia.org/wiki/List_of_programming_languages")
}
इस स्क्रिप्ट विकिपीडिया पृष्ठ से टेबल डेटा स्क्रैप करता है और इसे data.csv में लिखता है।
समानांतर मांगों को बनाएं
स्क्रैपिंग को तेज करने के लिए, आप गो के गोरूटीन का उपयोग करके समानांतर मांगों को बना सकते हैं। निम्न तरीका बताता है कि कैसे बहुत सारे पृष्ठों को समानांतर रूप से स्क्रैप करें:
go
package main
import (
"fmt"
"github.com/gocolly/colly"
"sync"
)
func scrape(url string, wg *sync.WaitGroup) {
defer wg.Done()
c := colly.NewCollector()
c.OnHTML("title", func(e *colly.HTMLElement) {
fmt.Println("Title found:", e.Text)
})
c.Visit(url)
}
func main() {
var wg sync.WaitGroup
urls := []string{
"https://en.wikipedia.org/wiki/Web_scraping",
"https://en.wikipedia.org/wiki/Data_mining",
"https://en.wikipedia.org/wiki/Screen_scraping",
}
for _, url := range urls {
wg.Add(1)
go scrape(url, &wg)
}
wg.Wait()
}
इस उदाहरण में, हम scrape फ़ंक्शन की परिभाषा करते हैं जो एक URL और एक वेट ग्रूप के रूप में आर्गुमेंट्स लेता है। फ़ंक्शन एक कॉली कलेक्टर प्रारंभ करता है, एक कॉलबैक सेट करता है जो पृष्ठ के शीर्षक को प्रिंट करता है, और URL पर जाता है। main फ़ंक्शन एक वेट ग्रूप बनाता है, एक सूची में URL के लिए पुनरावृत्ति करता है, और प्रत्येक URL के लिए एक गोरूटीन शुरू करता है ताकि समानांतर रूप से स्क्रैप किया जा सके।
इन चरणों का पालन करके, आप कॉली के साथ गो में बल्कि विश्वसनीय स्क्रैपर बना सकते हैं, विभिन्न स्क्रैपिंग परिदृश्यों के साथ निपट सकते हैं, और समानांतर मांगों के साथ प्रदर्शन को अनुकूलित कर सकते हैं। अधिक विस्तृत शिक्षण और उन्नत उपयोग के लिए, गो और कॉली के साथ वेब स्क्रैपिंग पर संसाधनों की जांच करें।
गो के लिए अन्य वेब स्क्रैपिंग पुस्तकालय
कॉली के अलावा, गो में वेब स्क्रैपिंग के लिए कई अन्य उत्कृष्ट पुस्तकालय हैं:
- GoQuery: इस पुस्तकालय में ज्यूक्वेरी के समान विशेषताओं और सिंटैक्स होता है, जो आपको ज्यूक्वेरी में जैसे वेब स्क्रैपिंग ऑपरेशन करने में सक्षम बनाता है।
- फेरेट: एक अनुकूलनीय, विस्तारित और तेज वेब स्क्रैपिंग प्रणाली जो वेब से डेटा निकालने को सरल बनाती है। फेरेट एक विशिष्ट विवरणात्मक भाषा के उपयोग पर केंद्रित है।
- Selenium: इसके हेडलेस ब्राउजर क्षमताओं के कारण, सीलेनियम डायनामिक सामग्री के लिए आदर्श है। यह गो के लिए आधिकारिक समर्थन नहीं है, लेकिन एक पोर्ट उपलब्ध है जो इसके उपयोग को गो में संभव बनाता है।
निष्कर्ष
वेब स्क्रैपिंग वेबसाइटों से डेटा के प्रभावी निकालने के लिए एक शक्तिशाली और आवश्यक कौशल है। गो और कॉली पुस्तकालय के साथ, आप विभिन्न डेटा निकालने के परिदृश्यों, जैसे सरल लिंक्स के संग्रह से लेकर जटिल टेबल डेटा के निकालने तक, के साथ-साथ समानांतर मांगों के साथ प्रदर्शन को अनुकूलित करने वाले विश्वसनीय स्क्रैपर बना सकते हैं।
इस गाइड में आपने जाना कि:
- कॉली पुस्तकालय के साथ गो में प्रोजेक्ट की सेटअप कैसे करें।
- वेबपेज से लिंक्स निकालने के लिए एक बुनियादी स्क्रैपर बनाएं।
- टेबल डेटा निकालने जैसे अधिक जटिल डेटा निकालने के साथ निपटें और इसे CSV फ़ाइल में लिखें।
- समानांतर मांगों के साथ अपने स्क्रैपर को अनुकूलित करें।
इन चरणों का पालन करके, आप कॉली के साथ गो में प्रभावी और कुशल वेब स्क्रैपर बना सकते हैं। अधिक उन्नत उपयोग और विस्तृत शिक्षण के लिए, गो और कॉली के साथ वेब स्क्रैपिंग पर अतिरिक्त संसाधनों की जांच करें।
एफक्यूए (अक्सर पूछे जाने वाले प्रश्न)
1. क्या कॉली गो में वेब स्क्रैपिंग सीख रहे शुरुआती लोगों के लिए उपयुक्त है?
हां। कॉली को आसान और शुरुआती द्वारा उपयोग करने योग्य बनाया गया है, जबकि अभी भी डोम पार्सिंग, मांग प्रबंधन, कॉलबैक और समानांतरता जैसी शक्तिशाली विशेषताएं प्रदान करता है। भले ही नए गो विकासकर्ता हों, वे केवल कुछ लाइनों के कोड के साथ एक कार्यकर एस्क्रैपर बना सकते हैं।
2. क्या कॉली संरचित सामग्री जैसे टेबल या सूचियां निकाल सकता है?
पूर्ण रूप से। कॉली विशिष्ट एचटीएमएल नोड्स और विशेषताओं के चयन की अनुमति देता है, जो टेबल, सूचियां, लिंक और अन्य संरचित तत्वों के निकालने को आसान बनाता है। आप गो के मानक पुस्तकालयों के साथ सीएसवी या जेसॉन में परिणामों को सीधे संग्रहीत कर सकते हैं।
3. मेरे कॉली वेब स्क्रैपर को कैसे तेज करें?
आप गो के गोरूटीन का उपयोग करके कई पृष्ठों को समानांतर रूप से प्रक्रिया कर सकते हैं। एक वेट ग्रूप के साथ समानांतर स्क्रैपर को शुरू करके और समाप्त करके, स्क्रैपिंग प्रदर्शन में महत्वपूर्ण वृद्धि होती है — विशेष रूप से बड़े डेटासेट या बहु-यूआरएल छापने के कार्यों के लिए।
अनुपालन अस्वीकरण: इस ब्लॉग पर प्रदान की गई जानकारी केवल सूचनात्मक उद्देश्यों के लिए है। CapSolver सभी लागू कानूनों और विनियमों का पालन करने के लिए प्रतिबद्ध है। CapSolver नेटवर्क का उपयोग अवैध, धोखाधड़ी या दुरुपयोग करने वाली गतिविधियों के लिए करना सख्त वर्जित है और इसकी जांच की जाएगी। हमारे कैप्चा समाधान उपयोगकर्ता अनुभव को बेहतर बनाने के साथ-साथ सार्वजनिक डेटा क्रॉलिंग के दौरान कैप्चा कठिनाइयों को हल करने में 100% अनुपालन सुनिश्चित करते हैं। हम अपनी सेवाओं के जिम्मेदार उपयोग की प्रोत्साहना करते हैं। अधिक जानकारी के लिए, कृपया हमारी सेवा की शर्तें और गोपनीयता नीति पर जाएं।
अधिक

रॉक्सीब्राउज़र में कैप्चा हल करना कैपसॉल्वर एकीकरण के साथ
CapSolver के साथ RoxyBrowser के एकीकरण करें ताकि ब्राउज़र के कार्यों को स्वचालित किया जा सके और reCAPTCHA, Turnstile और अन्य CAPTCHAs को बायपास किया जा सके।

Rajinder Singh
04-Feb-2026

ईजीस्पाइडर में कैप्चा हल करें कैपसॉल्वर एकीकरण के साथ
ईज़ीस्पाइडर एक दृश्य, नो-कोड वेब स्क्रैपिंग और ब्राउज़र ऑटोमेशन टूल है, जबकि कैपसॉल्वर के साथ जुड़ा हुआ है, तो यह reCAPTCHA v2 और Cloudflare Turnstile जैसे CAPTCHA को विश्वसनीय रूप से हल कर सकता है, जो वेबसाइटों पर सुचारू रूप से स्वचालित डेटा निकालने की अनुमति देता है।

Rajinder Singh
04-Feb-2026

रीकैपचा वी२ कैसे हल करें रीलेवेंस एआई में कैपसॉल्वर एकीकरण के साथ
रिलेवेंस एआई उपकरण बनाएं जो reCAPTCHA v2 को CapSolver के उपयोग से हल करे। ब्राउजर ऑटोमेशन के बिना एपीआई के माध्यम से फॉर्म जमाकर स्वचालित करें।

Rajinder Singh
03-Feb-2026

2026 में IP बैन: उनके काम करने का तरीका और उन्हें पार करने के व्यावहारिक तरीके
2026 में आईपी बैन बायपास करने के तरीके सीखें हमारे विस्तृत गाइड के साथ। आधुनिक आईपी ब्लॉकिंग तकनीकों और रिजिडेंशियल प्रॉक्सी और कैप्चा सॉल्वर्स जैसे व्यावहारिक समाधानों की खोज करें।

Nikolai Smirnov
26-Jan-2026

कैप्चा कैसे हल करें ब्राउज़र4 में कैपसॉल्वर इंटीग्रेशन के साथ
उच्च बहुतायत ब्राउज़र4 स्वचालन के साथ संयोजित करें, जो बड़े पैमाने पर वेब डेटा निकास में CAPTCHA चुनौतियों का निपटारा करने के लिए CapSolver का उपयोग करता है।

Rajinder Singh
21-Jan-2026

स्क्रैपी और सीलीनियम: आपके वेब स्क्रैपिंग परियोजना के लिए कौन सा सबसे अच्छा है
स्क्रैपी और सीलेनियम के बीच ताकतों और अंतरों की खोज करें। अपने प्रोजेक्ट के लिए सबसे अच्छा टूल कौन है, इसे सीखें और कैप्चा के जैसी चुनौतियों के साथ कैसे निपटें।

Nikolai Smirnov
14-Jan-2026


.