35 lines · 754 B · C
RawDownload
/* See LICENSE file for copyright and license details. */ #ifndef ROBOTS_H#define ROBOTS_H /* Maximum rules per robots.txt */#define MAX_RULES 512 /* Rule types */typedef struct {	char *path;	int allow; /* 1 = allow, 0 = disallow */} RobotsRule; /* Parsed robots.txt for a domain */typedef struct {	char *domain;	RobotsRule rules[MAX_RULES];	int nrules;	int crawl_delay; /* seconds, 0 = none specified */} Robots; /* Fetch and parse robots.txt for a domain */Robots *robots_fetch(const char *domain); /* Check if a path is allowed */int robots_allowed(Robots *r, const char *path); /* Get crawl delay in seconds (0 = none) */int robots_delay(Robots *r); /* Free robots struct */void robots_free(Robots *r); #endif /* ROBOTS_H */