• 0
marlene4us

Searching by nickname ( vendedor com muitos anúncios )

Question

Olá!

 

Estou criando um sistema para obter a listagem de anúncios de vendedores mas, quando o vendedor possui muitos anúncios ( + 20 mil anúncios ) o sistema não captura todos.

 

Segue abaixo uma função exemplo de como estou capturando os anúncios:

function lista_anuncios ( $nickname, $offset ){	
	
		$queryString = array(
			'nickname' => $nickname,
			'sort'     => 'relevance',
			'limit'    => '200',			
			'offset'   => $offset			
		);
		
		$url = "https://api.mercadolibre.com/sites/MLB/search?" . http_build_query($queryString);
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_TIMEOUT, 5);
		curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
		$data= curl_exec($ch);
		curl_close($ch);

		$result = json_decode($data, true);
		return $result;
		
}

Observações:

  1. Só consigo capturar 200 anúncios de cada vez ( limit = 200 )
  2. Fiz uma forma de gravar no banco de dados mysql os anúncios e quando chega no anúncio 200 vou aumentando o offset da busca ( exemplo: offset = 0, offset = 200, offset = 400, etc ). Rotina em loop.
  3. Em testes aqui consegui gravar 2400 anuncios de um vendedor com 20 mil anúncios e não consigo avançar mais ...

Alguém teria uma dica de como melhorar esta minha função ( ou método ) de capturar os anúncios de um vendedor com muuuitos anúncios?

 

 

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now