#!/usr/bin/env python3
"""Analyze njls.gov.cn pagination with Playwright"""
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(headless=True)
    context = browser.new_context(
        user_agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
    )
    page = context.new_page()
    
    page.goto('http://www.njls.gov.cn/lsqrmzf/214/228/index_17658.html', 
              wait_until='networkidle', timeout=30000)
    
    print('Title: %s' % page.title())
    print('dataCount: %s' % page.evaluate('window.dataCount'))
    print('totalList: %s' % page.evaluate('window.totalList'))
    print('pageSize: %s' % page.evaluate('window.pageSize'))
    
    page_nav = page.query_selector('#pageNav')
    if page_nav:
        print('#pageNav: %s' % page_nav.inner_html()[:300])
    else:
        print('#pageNav: NOT FOUND')
    
    page_div = page.query_selector('#page')
    if page_div:
        print('#page HTML: %s' % page_div.inner_html()[:300])
    else:
        print('#page: NOT FOUND')
    
    # Find internal script with getXxgkListInfo
    js_source = page.evaluate('''() => {
        var scripts = document.querySelectorAll('script:not([src])');
        for (var i = 0; i < scripts.length; i++) {
            var s = scripts[i];
            if (s.textContent && s.textContent.indexOf('getXxgkListInfo') !== -1) {
                return s.textContent.substring(0, 1000);
            }
        }
        return 'NOT FOUND';
    }')
    print('')
    print('=== getXxgkListInfo source ===')
    print(js_source)
    
    context.close()
    browser.close()
