Tôi muốn tìm nạp dữ liệu từ một url khác mà tôi đang sử dụng urllib và Beautiful Soup, Dữ liệu của tôi nằm trong thẻ bảng (mà tôi đã tìm ra bằng cách sử dụng Bảng điều khiển Firefox). Nhưng khi tôi cố gắng lấy bảng bằng cách sử dụng id của mình, kết quả là None, Sau đó, tôi đoán bảng này phải được thêm động thông qua một số mã js.Tìm nạp dữ liệu của các biến bên trong thẻ tập lệnh bằng Python hoặc Nội dung được thêm từ js
Tôi đã thử cả hai trình phân tích cú pháp 'lxml', 'html5lib' nhưng vẫn không thể lấy dữ liệu bảng đó.
Tôi cũng đã cố gắng một điều nữa:
web = urllib.urlopen("my url")
html = web.read()
soup = BeautifulSoup(html, 'lxml')
js = soup.find("script")
ss = js.prettify()
print ss
Kết quả:
<script type="text/javascript">
myPage = 'ETFs';
sectionId = 'liQuotes'; //section tab
breadCrumbId = 'qQuotes'; //page
is_dartSite = "quotes";
is_dartZone = "news";
propVar = "ETFs";
</script>
Nhưng bây giờ tôi không biết làm thế nào tôi có thể nhận được dữ liệu của các biến js.
Bây giờ tôi có hai tùy chọn để nhận được các biến js, bất kỳ một trong số chúng có thể hoàn thành nhiệm vụ của tôi nhưng tiếc là tôi không biết cách làm như thế này. một trong những vấn đề.
Cảm ơn
Không có điểm nào khi đoán javascript có tạo nội dung bảng hay không - bạn cần phải xác nhận điều đó trước tiên. URL có thể truy cập công khai không? Nếu vậy, nó là cái gì? – mhawke
Có Tôi xác nhận dữ liệu bảng được tạo từ mã js, bạn có thể kiểm tra tại đây http://www.nasdaq.com/quotes/nasdaq-financial-100-stocks.aspx. – Inforian