Parse dynamic content from web page


Keywords
DynamicWebParse, js, web, content, dynamic
License
MIT
Install
pip install DynamicWebParse==0.2.1.12

Documentation

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° которая позволяСт Π±ΠΎΠ»Π΅Π΅ просто ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ динамичСский Π²Π΅Π±-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚.

Для использования Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ chromedriver. Π’ дальнСйшСм Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ. Π—Π°Ρ‚Π΅ΠΌ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ парсСр: driver = '/path/to/chromedriver' parse = DynamicWebParse(driver)

Π”Π°Π»Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Ρ€Π΅ΠΆΠΈΠΌ с отслСТиваниСм парсинговой страницы, Ρ‚Π°ΠΊ ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ для этого Π΅ΡΡ‚ΡŒ 2 ΡΠΎΠΎΡ‚Π²Ρ‚Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: parse.makeVisibleDriver() parse.makeUnvisibleDriver()

Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страницы Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ: requests.allwaysLoadPage(link) ΠΏΡ€ΠΈ этом ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ врСмя Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ‡Ρ‚ΠΎΠΈΡ‚ ΠΎΠ±Ρ€Π²Π°Ρ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ

И ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡŒΡ‚ элСмСнты страницы ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: requests = Requests(parse.getDriver()) requests.getElems(xpath_str) Π² дальнСйшСм Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ способы получСния Π΄Π°Π½Π½Ρ‹Ρ…/

Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ ΠΊΠ»ΠΈΠΊΠΈ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ дСйствия: actionChainsToElem(self, action, elem): act = action(elem) act.perform()

actionChainsToElem(self, action, elem): act = action(elem) act.perform()

moveToElem(self, elem) - ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° элСмСнт скролом getElem(self, getData, breakTime=None) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ 1 элСмСнт getElems(self, getData, breakTime=None) - ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ элСмСнтов clickElem(self, getData, breakTime=None) - Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° элСмСнт submitElem(self, getData, breakTime=None) - ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ элСмСнт clickElems(self, getData, breakTime=None) - Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΌΠΎΠ³ΠΎ элСмСнтов