Thread View: pl.comp.lang.python
3 messages
3 total messages
Started by horhe
Thu, 06 Mar 2014 14:55
[newbie][soap via suds] Jak użyć doSearch z api allegro używając python-allegro-webapi / allegro_webapi
Author: horhe
Date: Thu, 06 Mar 2014 14:55
Date: Thu, 06 Mar 2014 14:55
55 lines
3316 bytes
3316 bytes
Cześć,
próbuję napisać prosty i krótki program, który wyświetli mi listę
aukcji. Użyłem do tego klasy
https://github.com/mattrick/python-allegro-webapi. O ile udaje się mi
użyć metod z niezagnieżdzonymi parametrami to mam problem nad składnią
dla metody doSearch
(http://allegro.pl/webapi/documentation.php/show/id,116#method-input,camel).
Mam tak:
allegro=AllegroWebAPI('sss','login','haslo')
a nastepnie próbuję wyszukać, przykładowa, błędna próba to:
>>> print
allegro.doSearch(allegro.session_id,searchquery='searchString=aaa')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "allegro_webapi.py", line 55, in _service
return component(*args, **kwargs)
File "/usr/lib64/python2.7/site-packages/suds/client.py", line 542,
in __call__
return client.invoke(args, kwargs)
File "/usr/lib64/python2.7/site-packages/suds/client.py", line 602,
in invoke
result = self.send(soapenv)
File "/usr/lib64/python2.7/site-packages/suds/client.py", line 649,
in send
result = self.failed(binding, e)
File "/usr/lib64/python2.7/site-packages/suds/client.py", line 702,
in failed
r, p = binding.get_fault(reply)
File "/usr/lib64/python2.7/site-packages/suds/bindings/binding.py",
line 265, in get_fault
raise WebFault(p, faultroot)
suds.WebFault: Server raised fault: 'Element
'{https://webapi.allegro.pl/service.php}searchQuery': Missing child
element(s). Expected is one of (
{https://webapi.allegro.pl/service.php}searchString,
{https://webapi.allegro.pl/service.php}searchOptions,
{https://webapi.allegro.pl/service.php}searchOrder,
{https://webapi.allegro.pl/service.php}searchOrderType,
{https://webapi.allegro.pl/service.php}searchCountry,
{https://webapi.allegro.pl/service.php}searchCategory,
{https://webapi.allegro.pl/service.php}searchOffset,
{https://webapi.allegro.pl/service.php}searchCity,
{https://webapi.allegro.pl/service.php}searchState,
{https://webapi.allegro.pl/service.php}searchPriceFrom ).
'
Moje pytanie jest takie, jaka jest prawidłowa składnia aby móc zbudować
i przekazać search-query (wraz z dodatkowymi parametrami) aby otrzymać
wynik wyszukania?
Sama metoda jest opisana tak (print allegro.client)
[...]
doSearch(xs:string sessionHandle, SearchOptType searchQuery, )
[...]
Re: [newbie][soap via suds] Jak użyć doSearch z api allegro używając python-allegro-webapi / allegro_webapi
Author: horhe
Date: Mon, 10 Mar 2014 13:40
Date: Mon, 10 Mar 2014 13:40
68 lines
3750 bytes
3750 bytes
W dniu 06.03.2014 15:55, horhe pisze:
> Cześć,
> próbuję napisać prosty i krótki program, który wyświetli mi listę
> aukcji. Użyłem do tego klasy
> https://github.com/mattrick/python-allegro-webapi. O ile udaje się mi
> użyć metod z niezagnieżdzonymi parametrami to mam problem nad składnią
> dla metody doSearch
> (http://allegro.pl/webapi/documentation.php/show/id,116#method-input,camel).
>
> Mam tak:
> allegro=AllegroWebAPI('sss','login','haslo')
> a nastepnie próbuję wyszukać, przykładowa, błędna próba to:
>
> >>> print
> allegro.doSearch(allegro.session_id,searchquery='searchString=aaa')
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> File "allegro_webapi.py", line 55, in _service
> return component(*args, **kwargs)
> File "/usr/lib64/python2.7/site-packages/suds/client.py", line 542,
> in __call__
> return client.invoke(args, kwargs)
> File "/usr/lib64/python2.7/site-packages/suds/client.py", line 602,
> in invoke
> result = self.send(soapenv)
> File "/usr/lib64/python2.7/site-packages/suds/client.py", line 649,
> in send
> result = self.failed(binding, e)
> File "/usr/lib64/python2.7/site-packages/suds/client.py", line 702,
> in failed
> r, p = binding.get_fault(reply)
> File "/usr/lib64/python2.7/site-packages/suds/bindings/binding.py",
> line 265, in get_fault
> raise WebFault(p, faultroot)
> suds.WebFault: Server raised fault: 'Element
> '{https://webapi.allegro.pl/service.php}searchQuery': Missing child
> element(s). Expected is one of (
> {https://webapi.allegro.pl/service.php}searchString,
> {https://webapi.allegro.pl/service.php}searchOptions,
> {https://webapi.allegro.pl/service.php}searchOrder,
> {https://webapi.allegro.pl/service.php}searchOrderType,
> {https://webapi.allegro.pl/service.php}searchCountry,
> {https://webapi.allegro.pl/service.php}searchCategory,
> {https://webapi.allegro.pl/service.php}searchOffset,
> {https://webapi.allegro.pl/service.php}searchCity,
> {https://webapi.allegro.pl/service.php}searchState,
> {https://webapi.allegro.pl/service.php}searchPriceFrom ).
> '
>
>
> Moje pytanie jest takie, jaka jest prawidłowa składnia aby móc zbudować
> i przekazać search-query (wraz z dodatkowymi parametrami) aby otrzymać
> wynik wyszukania?
> Sama metoda jest opisana tak (print allegro.client)
> [...]
> doSearch(xs:string sessionHandle, SearchOptType searchQuery, )
> [...]
>
Mam...:
szukaj= {
'searchString':'foo',
'searchOrder':'4',
'searchOrderType':'1'
}
wynik=allegro.doSearch(sessionHandle=allegro.session_id,searchQuery=szukaj)
Re: [newbie][soap via suds] Jak użyć doSearch z api allegro używając python-allegro-webapi / allegro_webapi
Author: nierozwazny
Date: Wed, 09 Apr 2014 13:25
Date: Wed, 09 Apr 2014 13:25
8 lines
1757 bytes
1757 bytes
W dniu czwartek, 6 marca 2014 15:55:18 UTC+1 użytkownik horhe napisał:
> Moje pytanie jest takie, jaka jest prawidłowa składnia aby móc zbudować
> i przekazać search-query (wraz z dodatkowymi parametrami) aby otrzymać
> wynik wyszukania?
search_opt = allegro.client.factory.create('SearchOptType')
search_opt.searchString = 'żywot briana'
result = allegro.doSearch(allegro.session_id, search_opt)
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads