'Scraping a simple website with colly in golang does not return any data
I'm trying to scrape a simple website that looks like this:
<html>
<head>
</head>
<body>
<pre>
"Name Surname 1
Name Surname 2
Name Surname 3
Name Surname 4"
</pre>
</body>
</html>
Wrote a simple go code:
package main
import (
"fmt"
"github.com/gocolly/colly"
)
func main() {
c := colly.NewCollector(
colly.AllowedDomains("thewebsite.com"),
)
c.OnHTML("body", func(e *colly.HTMLElement) {
fmt.Println(e.Text)
})
c.OnResponse(func(r *colly.Response) {
fmt.Println(r.StatusCode)
})
c.OnRequest(func(r *colly.Request) {
fmt.Println("Visiting", r.URL)
})
c.Visit("http://thewebsite.com")
}
When I run this code, I get the below output:
Visiting http://thewebsite.com
200
So everything is OK. The website is being opened successfully, but I do not get any data from it.
I've tried to change the c.OnHTML to pre, body.pre - but none of them worked as I expected to.
What am I missing here?
Solution 1:[1]
I had a similar problem and I had to remove the domain restriction, despite it appearing to be correct. In other words, try commenting out the AllowedDomains() bit, like this:
c := colly.NewCollector(
//colly.AllowedDomains("thewebsite.com"),
)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Tom Chantler |
