def scrap(self,<EOL>url=None, scheme=None, timeout=None,<EOL>html_parser=None, cache_ext=None<EOL>):
if not url:<EOL><INDENT>url = self.url<EOL><DEDENT>if not scheme:<EOL><INDENT>scheme = self.scheme<EOL><DEDENT>if not timeout:<EOL><INDENT>timeout = self.timeout<EOL><DEDENT>if not html_parser:<EOL><INDENT>html_parser = self.html_parser<EOL><DEDENT>if not scheme:<EOL><INDENT>raise WEBParameterException("<STR_LIT>")<EOL><DEDENT>if not url:<EOL><INDENT>raise WEBParameterException("<STR_LIT>")<EOL><DEDENT>resp = self.get(url, timeout, cache_ext=cache_ext)<EOL>soup = BeautifulSoup(resp.html, html_parser)<EOL>resp.scraped = self._parse_scheme(soup, scheme)<EOL>return resp<EOL>
Scrap a url and parse the content according to scheme

:param url: Url to parse (default: self._url)
:type url: str
:param scheme: Scheme to apply to html (default: self._scheme)
:type scheme: dict
:param timeout: Timeout for http operation (default: self._timout)
:type timeout: float
:param html_parser: What html parser to use (default: self._html_parser)
:type html_parser: str | unicode
:param cache_ext: External cache info
:type cache_ext: floscraper.models.CacheInfo
:return: Response data from url and parsed info
:rtype: floscraper.models.Response
:raises WEBConnectException: HTTP get failed
:raises WEBParameterException: Missing scheme or url