我试图从以下网站收集公共房地产数据:http://icare.fairfaxcounty.gov/search/commonsearch.aspx?mode=address。我已经解决了第一部分,它使用POST请求搜索给定的街道(本例中的Main St)。在
from bs4 import BeautifulSoup
import requests
import urllib, urllib2
streetName = 'main'
suffix = 'st'
url = "http://icare.fairfaxcounty.gov/search/CommonSearch.aspx?mode=ADDRESS"
values = { '__VIEWSTATE':'/wEPDwUJLTgxMDY5OTM2DxQrAAJkZxYCZg9kFgQCBQ8PFgIeB1Zpc2libGVoZBYCZg9kFgJmD2QWAgIBD2QWAgIBD2QWAgIBDxBkZBYAZAIHDw8WAh8AaGRkZA==',
'__EVENTVALIDATION' :'/wEWCAL/k9GbBALq6fr+DwKw9e7KCwKNs9bAAwLYyu+sAwLE8frfBwK5mc2yBwLunJLZAQ==',
'PageNum':'',
'SortBy':'PARID',
'SortDir': 'asc',
'PageSize':50,
'hdAction':'Search',
'hdIndex': '',
'sIndex':-1,
'hdListType':'PA',
'hdJur': '',
'inpNumber': '',
'inpUnit': '',
'inpStreet':streetName ,
'inpSuffix1':suffix,
'selSortBy':'PARID' ,
'selSortDir': 'asc' ,
'selPageSize':50 ,
'searchOptions$hdBeta': '',
'btSearch':'SEARCH',
'mode':'ADDRESS',
'mask': ''}
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
pageText = response.read()
#now I can parse the list of addresses from this page
soup = BeautifulSoup(pageText)
但是,我不知道如何创建单击其中一个地址的效果,以便能够解析该信息。有人能给我指出正确的方向吗?在
{it{get}没有http}请求。在
一个方向是编写a scrapy spider,其中包括以下步骤:
parse
函数中,使用FormRequest来获取地址行它有一些学习曲线,但我很确定这是正确的方向,至少其中之一,祝你好运!在
相关问题 更多 >
编程相关推荐