【发布时间】:2018-10-20 22:51:37
【问题描述】:
我在使用乐透抽奖获取统计数据时遇到问题,我尝试了一堆不同的解析器,但每次返回的内容都是“无”
import requests
from bs4 import BeautifulSoup
url = "https://www.opap.gr/lotto-draw-results"
user = {"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36"}
req = requests.get(url, headers = user)
soup = BeautifulSoup(req.text, "html.parser")
i = 1
while i <= 6:
for draw_num in soup.findAll("li", {"class": "draw-result-number-{}".format(i)}):
print(draw_num.content)
i += 1
来自网站的一段 html 代码:
<ul class="circles"> <li class="draw-result-number-1">1</li> <li class="draw-result-number-2">2</li> <li class="draw-result-number-3">12</li> <li class="draw-result-number-4">14</li> <li class="draw-result-number-5">20</li> <li class="draw-result-number-6">49</li> <span class="plus_symbol" style="display: inline;">+</span> <li class="highlighted draw-result-number-bonus" style="display: inline-block;">8</li> </ul>
如果你能帮助我,我将不胜感激。
【问题讨论】:
-
看到这个问题stackoverflow.com/questions/52910520/…,本质上是同样的问题——你试图用
request打开一个webapp,request不能运行javascript -
@RockyLi 我现在有点困惑,我以前从未使用过 selenium,你能帮我写代码吗?
-
已回答,使用
pip install selenium安装selenium包
标签: python web-scraping beautifulsoup