Python写一个简单的爬虫
爬取的目标网站:

code
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
from lxml import etree class Main:
def __init__(self):
self.headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36',
}
self.url = "https://beijing.anjuke.com/sale/?pi=baidu-cpc-bj-tyong1&kwid=2341817153&utm_term=%e6%89%be%e6%88%bf&bd_vid=9128294385511928514" def lord(self):
response = requests.get(url=self.url, headers=self.headers).text
tree = etree.HTML(response)
# 将页面源码数据中的房子的名称和价格进行爬取
li_list = tree.xpath('//ul[@class="houselist-mod houselist-mod-new"]/li')
# 将li标签表示的局部页面内容指定数据进行解析
for li in li_list:
title = li.xpath('./div[2]/div[1]/a/text()')[0].strip()
describe = li.xpath('./div[2]/div[2]/span/text()')
site = li.xpath('./div[2]/div[3]/span/text()')[0].split()[1]
price = li.xpath('./div[3]/span[1]/strong/text()')
print('标题:{}\n描述:{}\n地点:{}\n价格{}万\n'.format(title, describe, site, price))
with open('date.txt','a+',encoding='utf-8') as f1:
f1.write('标题:{}\n描述:{}\n地点:{}\n价格{}万\n\n'.format(title, describe, site, price))
f1.close() if __name__ == '__main__':
obj = Main()
obj.lord()
输出结果

Python写一个简单的爬虫的更多相关文章
- 用node.js从零开始去写一个简单的爬虫
如果你不会Python语言,正好又是一个node.js小白,看完这篇文章之后,一定会觉得受益匪浅,感受到自己又新get到了一门技能,如何用node.js从零开始去写一个简单的爬虫,十分钟时间就能搞定, ...
- 用Python写一个简单的Web框架
一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...
- python写一个简单的CMS识别
前言: 收集了一点cms路径,打算在写一个.之前已经写了 有需要的可以自己翻我的博客 思路: 网站添加路径判断是否为200,并且无过滤列表中的字符 代码: import requests import ...
- 利用python写一个简单的小爬虫 爬虫日记(1)(好好学习)
打开py的IDLE >>>import urllib.request >>>a=urllib.request.urlopen("http://www.ba ...
- Python运维三十六式:用Python写一个简单的监控系统
市面上有很多开源的监控系统:Cacti.Nagios.Zabbix.感觉都不符合我的需求,为什么不自己做一个呢? 用Python两个小时徒手撸了一个简易的监控系统,给大家分享一下,希望能对大家有所启发 ...
- 用python写一个简单的文件上传
用Pycharm创建一个django项目.目录如下: <!DOCTYPE html> <html lang="en"> <head> <m ...
- 使用python写一个简单的C段扫
纠结C段查询N久..刚刚拿骚棒FD去抓御剑的包,发现emmm...申请了必应的Key 然后去拿必应API查.这里疼[心]原本也想去弄的.但是人懒. 然后就没有然后了. 代码: 生成IP段的脚本图1 # ...
- golang写一个简单的爬虫
package main import( "fmt" "io/ioutil" "net/http" ) func gethtml(url s ...
- python (1)一个简单的爬虫: python 在windows下 创建文件夹并写入文件
1.一个简单的爬虫:爬取豆瓣的热门电影的信息 写在前面:如何创建本来存在的文件夹并写入 t_path = "d:/py/inn" #本来不存在inn,先定义路径,然后如果不存在,则 ...
随机推荐
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表格:将悬停的颜色应用在行或者单元格上
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Manthan, Codefest 19(Div. 1 + Div. 2)
传送门 A. XORinacci 签到. Code /* * Author: heyuhhh * Created Time: 2020/2/26 9:26:33 */ #include <ios ...
- ADV-292 计算行列式 java
问题描述 //据说很多人的题目会有一大堆废话,本傻×就不在这里废话了. 给定一个N×N的矩阵A,求|A|. 输入格式 第一行一个正整数N. 接下来N行,每行N个整数,第i行第j个数字表示A[i][j] ...
- android sqlite 图片保存和读出 用流 转字节码
原文:http://blog.sina.com.cn/s/blog_8cfbb99201012oqn.html package com.yiyiweixiao; import android.cont ...
- redis单线程为什么快?
- java学习-初级入门-面向对象⑤-类与对象-类与对象的定义和使用3
这次我们要做一个日期类Date类 主要目的是 1. 熟悉-->构造不同参数的函数 2.善于利用已有的函数!! 题目要求: Date类要求 可设定年月日 可转换为字符串,并可指定分隔符, ...
- SpringMVC--文件上传与下载
http://blog.csdn.net/u012706811/article/details/51059419
- 线程高级篇-Lock锁实现生产者-消费者模型
Lock锁介绍: 在java中可以使用 synchronized 来实现多线程下对象的同步访问,为了获得更加灵活使用场景.高效的性能,java还提供了Lock接口及其实现类ReentrantLock和 ...
- 题目:给定一数组 例如:a = [1,2,3,5,2,1] 现用户提供一个数字 请返回用户所提供的数字的所有下标
def test(ary): ds = {} for i in range(len(ary)): if ds.get(ary[i]): ds[ary[i]].append(i) else: ds[ar ...
- maven详解之 pom.xml 解释
<project>:pom.xml的根标签,一个maven项目用一对<peoject></project>标签包裹. <modelVersion>4.0 ...