Mam surowy ciąg html, który chcę przekonwertować na obiekt odpowiedzi HTML na scrapy, aby można było używać selektorów css
i xpath
, podobnych do scrapy do response
. Jak mogę to zrobić?scrapy: konwertuj ciąg html do obiektu HtmlResponse
11
A
Odpowiedz
11
Przede wszystkim, jeśli jest to w celach testowych lub debugowania, można użyć Scrapy shell
:
$ cat index.html
<div id="test">
Test text
</div>
$ scrapy shell index.html
>>> response.xpath('//div[@id="test"]/text()').extract()[0].strip()
u'Test text'
Istnieje different objects available in the shell trakcie sesji, jak response
i request
.
Lub można utworzyć wystąpienia HtmlResponse
class i zapewnić ciąg HTML body
:
>>> from scrapy.http import HtmlResponse
>>> response = HtmlResponse(url="my HTML string", body='<div id="test">Test text</div>')
>>> response.xpath('//div[@id="test"]/text()').extract()[0].strip()
u'Test text'
Powiązane problemy
- 1. Konwertuj ciąg znaków HTML na obrazki
- 2. Konwertuj ciąg do System.IO.Stream
- 3. Konwertuj ciąg do bufora węzła
- 4. Android Konwertuj ciąg do JSONObject
- 5. Perl: Konwertuj ciąg do odniesienia?
- 6. Konwertuj długi ciąg do data.frame
- 7. Konwertuj ciąg do Datetime C#
- 8. Konwertuj SVGSVGElement na ciąg
- 9. Przeciek pamięci pająka Scrapy
- 10. Powershell: Konwertuj XML na ciąg
- 11. Konwertuj obiekt na ciąg JSON
- 12. Konwertuj Js Definicja na ciąg
- 13. Konwertuj null na ciąg
- 14. Konwertuj NSData na ciąg?
- 15. Konwertuj ciąg na SocketAddr
- 16. Konwertuj ciąg na wyrażenie?
- 17. Konwertuj CSS na HTML
- 18. Konwertuj ciąg na LatLng
- 19. Konwertuj LPWSTR na ciąg
- 20. Konwertuj ciąg do tej pory - rzymski miesiąc
- 21. Konwertuj ciąg do listy w pytonie
- 22. Konwersja ciąg do datetime.time obiektu
- 23. Scrapy - Pobieranie obiektu pająk w dupefilter
- 24. Scrapy Shell i Scrapy Splash
- 25. Konwertuj element jquery do elementu html
- 26. Przekazywanie obiektu do atrybutów HTML
- 27. Konwertuj ciąg znaków RTF na ciąg XAML
- 28. Regex - Konwertuj HTML na prawidłowy znacznik XML
- 29. Ciąg do obiektu, ale nie obiekt do ciąg?
- 30. Konwertuj Integer Into na ciąg
dzięki alecxe używam selen ponieważ posiadał jakiejś ajaxiness. Chcę przekonwertować driver.page_source na ten sam obiekt, co rerosne, dzięki czemu mogę ponownie użyć niektórych ekstraktorów (używając selektorów css i xpath) zamiast korzystać z lxml. Myślę, że twoja druga opcja jest tą, której potrzebuję. – yayu
@ yayu wtedy prawdopodobnie nie musisz tworzyć odpowiedzi HTML, ale raczej 'Selectora', zobacz http://stackoverflow.com/questions/18836286/scraping-with-scrapy-and-selenium i http: //stackoverflow.com/questions/17975471/selenium-with-scrapy-for-dynamic-page. Może pomóc. Dzięki. – alecxe
dzięki. Przyjrzę się temu. – yayu