python - 使用 Python 和 Beautifulsoup 从日历中提取数据

标签 python web-scraping beautifulsoup

我想获取日历中的数据:

http://www.purebhakti.com/component/panjika

我考虑过使用 Python 和 beautifulsoap,但我接受建议。

我想参加当天的事件:

2017 年 4 月 22 日:Ekādaśī,K,06:09,Satabhiṣā

+ŚUDDHA EKĀDAŚĪ VRATA:为 Varūthinī EKADASI 禁食

如何让节目到达日历(自动选择时区和城市后)?例如: 时区 = -3:00 布宜诺斯艾利斯 城市 = 里约热内卢

from bs4 import BeautifulSoup
import requests

url = 'http://www.purebhakti.com/component/panjika'
header = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) '
                        'AppleWebKit/537.36 (KHTML, like Gecko) '
                        'Chrome/51.0.2704.103 Safari/537.36'}



req = requests.get(url,headers= header)

html = req.text

soup = BeautifulSoup(html,'html.parser')

最佳答案

import requests, bs4
from urllib.parse import parse_qsl

qs = 'action=2&timezone=23&location=Rio+de+Janeiro%2C+Brazil++++++++043W15+22S54+++++-3.00&button=Get+Calendar'
payload = dict(parse_qsl(qs))
r = requests.post('http://www.purebhakti.com/component/panjika', data=payload)

当你点击按钮时,你正在发布数据到服务器,你可以在chrome开发工具中找到数据。

enter image description here

我们可以通过 requests.post()

模仿这种行为

我还使用 parse_qsl 将编码的 url 转换为 python 字典:

{'action': '2',
'button': 'Get Calendar',
 'location': 'Rio de Janeiro, Brazil        043W15 22S54     -3.00',
 'timezone': '23'}

关于python - 使用 Python 和 Beautifulsoup 从日历中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42390218/

相关文章:

python - 如何使用 django 将进程置于后台?

python - 如何在Beautifulsoup中提取标签的子项?

python - 使用 Selenium 进行网页抓取

python - 如何提取div标签中的强元素

python - 查看页面源代码时发现抓取代码

python - 如何从《纽约时报》中抓取特定类别的所有文章

python - 如何在 Pandas 数据框行中找到最后一个集群?

python - 如何使用 python/matplotlib 绘制中间有空行的数据

python - 如何从源代码卸载 beautifulsoup?

selenium - 从无限滚动网站抓取内容