Python 从静态网页获取特定项目时遇到问题

Python 从静态网页获取特定项目时遇到问题,python,python-3.x,web-scraping,python-requests,Python,Python 3.x,Web Scraping,Python Requests,我试图从网页中的表中只解析货币,但我从该站点得到了完全不同的结果。缺少的货币可在页面源代码中找到,因此它们都是静态的。我错在哪里?与我在中使用的不同。为了清楚起见,我想提及这一点 我试过: import requests from bs4 import BeautifulSoup URL = "https://www.forexfactory.com/calendar.php?day=today" res = requests.get(URL,headers={'User-Agent':'

我试图从网页中的表中只解析
货币
,但我从该站点得到了完全不同的结果。缺少的
货币
可在
页面源代码中找到,因此它们都是静态的。我错在哪里?与我在中使用的不同。为了清楚起见,我想提及这一点

我试过:

import requests
from bs4 import BeautifulSoup

URL = "https://www.forexfactory.com/calendar.php?day=today"

res = requests.get(URL,headers={'User-Agent':'Mozilla/5.0'})
soup = BeautifulSoup(res.text,"lxml")
for item in soup.select("tr.calendar_row"):
    currency = item.select_one("td.calendar__currency").get_text(strip=True)
    print(currency)
我得到的输出(与该站点中可用的输出非常不同):


如何使用请求从该站点获取所有货币?

cookies确定某种形式的验证,从而确定您看到的结果。你只需要从另一个答案中选择两个。如果省略第二个值,例如下面显示的值,则窗口将切换到5:30am开始(仍然返回相同数量的结果),这是默认返回值-选择除1之外的任何其他值,即“ffverifytimes”,您将得到相同的窗口。我认为这是一种调整,以对主页的区域设置具有时间意识

如果忽略“ffdstonoff”,则窗口将切换到凌晨2:30开始

添加cookie“fftimezoneoffset”:“1”,您可以将窗口切换到前一天晚上11:45开始

import requests
from bs4 import BeautifulSoup as bs

cookies={ 
    "ffdstonoff":"1", 
    "ffverifytimes":"1"
}
r = requests.get('https://www.forexfactory.com/calendar.php?day=today', cookies = cookies)
soup = bs(r.content, 'lxml')
currencies = [item.text.strip() for item in soup.select('.currency')]
print(currencies)

这不是回答问题吗?需要更多信息吗?
import requests
from bs4 import BeautifulSoup as bs

cookies={ 
    "ffdstonoff":"1", 
    "ffverifytimes":"1"
}
r = requests.get('https://www.forexfactory.com/calendar.php?day=today', cookies = cookies)
soup = bs(r.content, 'lxml')
currencies = [item.text.strip() for item in soup.select('.currency')]
print(currencies)