Robię analizę układu strony w pythonie. Zasadniczym zadaniem jest programowe mierzenie wielkości elementów z podanymi kodami źródłowymi HTML, abyśmy mogli uzyskać dane statystyczne dotyczące stosunku treści do reklamy, pozycji bloku reklamowego, rozmiaru bloku reklamowego dla korpusu strony internetowej.Jak programowo zmierzyć rozmiary elementów w kodzie źródłowym HTML przy użyciu Pythona?
Oczywistym podejściem jest użycie atrybutów szerokość/wysokość, ale nie zawsze są one dostępne. Poza tym rzeczy takie jak width: 50%
muszą zostać obliczone po załadowaniu do DOM. Więc domyślam się, że ładowanie kodu źródłowego HTML do przeglądarki predefiniowanej pod kątem rozmiaru okna (jak na przykład mechanize, chociaż nie jestem pewien, czy można ustawić rozmiar okna) jest dobrym sposobem na wypróbowanie, ale zmechanizowanie nie wspiera powrotu rozmiar elementu mimo to.
Czy istnieje jakiś uniwersalny sposób (bez atrybutów szerokości/wysokości), aby zrobić to w pythonie, najlepiej z pewną biblioteką?
Dzięki!
Człowieku, nie mogę nawet dostać moje elementy czynią do tej samej wielkości w IE i Firefox. Jeśli istnieje "oficjalny" sposób obliczania wymiarów, można założyć, że połowa rynku ignoruje to i robi to na swój własny sposób. – Kevin
Wystarczy, aby skierować cię w stronę - może chcesz sprawdzić, co WebKit i inne renderery oferują jako dane wyjściowe. Oczywiście nie dostaniemy Tridenta, ale WK/Gecko może być wystarczająco dobry ... – TC1
@Kevin Twoja troska jest z pewnością ważna. Ale dla (empirycznego) celu badawczego pozostanę przy każdej przeglądarce, która może to zrobić. Rozumiem, że w IE i Firefox niektóre elementy nie są renderowane w tej samej wielkości i ja też cierpiałem. Ale czy to naprawdę ogromna różnica? Nie martwię się o dryfowanie tutaj kilku pikseli :) – ShuaiYuan