15158846557 在线咨询 在线咨询
15158846557 在线咨询
所在位置: 首页 > 营销资讯 > 网站运营 > 链家网全国省份城市的url地址

链家网全国省份城市的url地址

时间:2023-06-07 18:54:02 | 来源:网站运营

时间:2023-06-07 18:54:02 来源:网站运营

链家网全国省份城市的url地址:import requestsfrom requests.exceptions import RequestExceptionfrom bs4 import BeautifulSoupimport jsondef fetch(url): try: # proxies = {'http': 'http://172.17.0.3:7890'} headers = { 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:98.0) Gecko/20100101 Firefox/98.0', } result = requests.get(url, headers=headers) return result.text except RequestException as e: return f"Error {e}!"#解析页面,bs4真的慢,好久没用了体验哈,parsel超好用,这个迭代了三次都 O 3了。def pase(result): bs = BeautifulSoup(result, 'lxml') ul = bs.find('ul', attrs={'class': 'city_list_ul'}) li = ul.find_all('div', attrs={'class': 'city_list'}) for i in li: title = i.find('div', attrs={'class': 'city_list_tit c_b'}) table = title.text datas = {table: [], 'url_link': []} city_ul = i.find_all('ul') for j in city_ul: a = j.find_all('a') for a_ in a: datas.get(table).append(a_.text) datas.get('url_link').append(a_.attrs['href']) print(datas) yield datas#将数据写入json格式文件,也可以是其他合适的def back_datas(data): def datas(): for d in data: yield d return datas()def end_save_datas(da): datas = {'result': [data for data in back_datas(da)]} with open('city.json', 'a') as fp: json.dump(datas, fp, indent=4)if __name__ == "__main__": res = fetch("https://www.lianjia.com/city/") data = pase(res) end_save_datas(data)

后续可以通过读取数据中的url链接使用scrapy爬取,提取每个页面中的house type,接着持续爬取。

关键词:城市,地址,省份

74
73
25
news

版权所有© 亿企邦 1997-2025 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭