在python列表中获取javascript结果

在python列表中获取javascript结果,javascript,jquery,python,phantomjs,Javascript,Jquery,Python,Phantomjs,我使用此网站下载有关印度地区lat/lon的必要信息 http://india.csis.u-tokyo.ac.jp/ 我可以使用python获取给定州的所有地区吗?例如,如果我选择州:马哈拉施特拉邦,我会在下一个下拉列表中看到阿科拉、莱加尔等地区的列表。我需要这些信息作为python列表 我可以看到调用了一个javascript函数,它从/api/目录获取数据 function setDistrictList() { var selected = ""; state = $(

我使用此网站下载有关印度地区lat/lon的必要信息

http://india.csis.u-tokyo.ac.jp/
我可以使用python获取给定州的所有地区吗?例如,如果我选择州:马哈拉施特拉邦,我会在下一个下拉列表中看到阿科拉、莱加尔等地区的列表。我需要这些信息作为python列表

我可以看到调用了一个javascript函数,它从/api/目录获取数据

function setDistrictList() {
    var selected = "";
    state = $("#state_list").val();
    districts = {};
    url = "/api/getDistrictList";
我是否可以使用python以编程方式获取这个地区列表

更新:

我试过这个函数。但这将返回结果,而不是我期望的Java脚本下拉列表

def __getVillageMarkersFromWeb(self,query, state_code=None, district_code=None):
    stateString = '"state":"' + state_code + '"' if state_code is not None else ""
    districtString = ',"district":"' + district_code + '"' if district_code is not None else ""
    f_param = '{' + stateString + districtString + '}'
    params = urllib.urlencode({"q":query,"f":f_param})
    url = "http://india.csis.u-tokyo.ac.jp/geocode-cgi/census_ajax_json.cgi"
    http = httplib2.Http()
    response, markers_xml = http.request(url, "POST", params)
    dom = minidom.parseString(markers_xml)
    markers = dom.getElementsByTagName("marker")
    return markers
你可以用

BeautifulSoup允许您在使用Requests/urllib/urllib2从页面获取标记后,以具有特定类/id的元素为目标

然后,您可以在BS对象中循环并将每个对象保存到列表中


如果页面上的内容是用JavaScript生成的,则可以在刮取标记之前模拟JS。

当然可以。因为您用[PhantomJS]标记了它,所以您可能需要一个PhantomJS解决方案。您可以通过Python中的Selenium驱动PhantomJS。你自己尝试一下,当你有特殊问题时再回来。