用python爬取链家泰州二手房信息400条
时间: 2023-07-12 14:56:42 浏览: 164
好的,我可以帮你实现这个功能。我们可以使用requests库来发送HTTP请求,并使用BeautifulSoup4库解析HTML页面。以下是示例代码:
```python
import requests
from bs4 import BeautifulSoup
# 设置请求头信息
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 获取网页内容
def get_html(url):
response = requests.get(url, headers=headers)
response.encoding = response.apparent_encoding
if response.status_code == 200:
return response.text
else:
return None
# 解析网页内容
def parse_html(html):
soup = BeautifulSoup(html, 'html.parser')
house_list = soup.find('ul', {'class': 'sellListContent'}).find_all('li')
for house in house_list:
name = house.find('div', {'class': 'title'}).find('a').text.strip()
price = house.find('div', {'class': 'totalPrice'}).find('span').text.strip()
area = house.find('div', {'class': 'houseInfo'}).find_all('a')[1].text.strip()
layout = house.find('div', {'class': 'houseInfo'}).find_all('a')[0].text.strip()
print(name, price, area, layout)
# 主函数
def main():
url = 'https://tz.lianjia.com/ershoufang/pg{}/'
for i in range(1, 5):
html = get_html(url.format(i))
if html:
parse_html(html)
if __name__ == '__main__':
main()
```
在这个示例中,我们首先定义了一个get_html函数,用于获取给定URL的HTML内容。然后,我们定义了一个parse_html函数,用于解析HTML内容并提取房屋名称、价格、面积和户型。最后,我们在主函数中循环遍历多个页面,并调用get_html和parse_html函数来获取和解析每个页面的内容。在parse_html函数中,我们使用了find和find_all方法来查找HTML页面中的特定元素,并使用text和strip方法来获取元素的文本内容。
你可以将以上代码保存在一个Python文件中,例如lianjia.py,然后在终端中运行它:
```
python lianjia.py
```
运行成功后,你将看到终端中输出400条链家泰州二手房的信息。
阅读全文