我试图使用xpath从网站获取一些值。 http://irvingmasjid.org/index.php
如果你看右上角应该是一个带有一些值的表。我想得到的是标题下面的6个数字值" Adhan"意思是:
4.39,6.20等。
我知道你需要在html代码中找到一些独特的东西,我发现了这个:
//*[@id='slideshow-305-57546dc930cff']
但我不知道如何从那里继续前进到我想要的价值观。我正在尝试这样的事情:
dict = {}
url = "http://irvingmasjid.org/index.php"
rows_xpath = XPath("//*[@id='slideshow-305-57546dc930cff']/")
for id,row in enumerate(blabla:::)
get the values here...
从未使用过很多python也是xpath很抱歉无法提供更多信息。如果你有代码示例,请不胜感激。
答案 0 :(得分:1)
这个案例的有趣之处在于,您甚至不需要解析HTML - 您正在从其他网址检索您正在搜索的数据:
>>> from pprint import pprint
>>> import requests
>>>
>>> url = "http://irvingmasjid.org/salah2016.php"
>>> response = requests.get(url)
>>>
>>> pprint(response.json())
{u'_day_of_year': u'157',
u'adhan_asr': u'5:09',
u'adhan_dhuhr': u'1:29',
u'adhan_fajr': u'4:39',
u'adhan_isha': u'9:49',
u'adhan_maghrib': u'8:37',
u'day': u'12:37',
u'j_asr': u'6:00',
u'j_dhuhr': u'1:45',
u'j_fajr': u'5:15',
u'j_isha': u'10:15',
u'jumuah_1': u'1:45',
u'jumuah_2': u'2:45',
u'midnight': u'12:37',
u'month_date': u'12:37',
u'sunrise': u'6:20',
u'tahajjud': u'1:57'}
答案 1 :(得分:0)
在谷歌浏览器中,如果你检查一个元素,然后右键单击它并选择“复制>复制XPath”它应该生成你需要的xpath。 See this picture
我不确定你从哪里获得id值,除非它定期更改。目前,该div的id值为slideshow-305-575473207d5b6
。
编辑:好的,是的,看起来这个div的id是随机生成的(刷新页面几次......每次都应该不同)。因此,以此为出发点是没有用的。也可以直接转到td
元素,因为它们有自己的ID。