利用scrapy爬取58同城租房信息
tc.py 代码
# -*- coding: utf-8 -*-
import scrapy
from ..items import TcItemclass Tc58Spider(scrapy.Spider):name = 'tc'allowed_domains = ['bj.58.com']start_urls = ['http://bj.58.com/chuzu/pn1/?PGTID=0d3090a7-0000-1fd7-9c9a-3a83d8c87059&ClickID=2']#http://bj.58.com/chuzu/pn5/?PGTID=0d3090a7-0000-1fd7-9c9a-3a83d8c87059&ClickID=2def parse(self, response):for i in range(2,10):next_url = 'http://bj.58.com/chuzu/pn{}/?PGTID=0d3090a7-0000-1fd7-9c9a-3a83d8c87059&ClickID=2'.format(i)yield scrapy.Request(next_url, callback=self.parse_xq)def parse_xq(self, response):# with open('58tongcheng.html','wb') as f:# f.write(response.body)#/html/body/div[4]/div[1]/div[5]/div[2]/ul/li[1]/div[2]/h2/aitem=TcItem()titles = response.xpath('//ul[@class="listUl"]/li/div[2]/h2/a/text()').extract()print(titles)rooms =response.xpath('//ul[@class="listUl"]/li/div[2]/p[1]/text()').extract()print(rooms)adds = response.xpath('//ul[@class="listUl"]/li/div[2]/p[2]/a/text()').extract()print(adds)prices = response.xpath('//ul[@class="listUl"]/li/div[3]/div[2]/b/text()').extract()print(prices)for i in range(0,len(prices)):title = titles[i].replace('\n','').replace(' ','')if title == '':title = 'mjx'else:item['title'] = title# print(item['title'])item['room'] = rooms[i].replace('\xa0','').replace(' ','')item['dizhi'] = adds[i].replace('.','')item['price'] = prices[i]yield item
items.py代码
class TcItem(scrapy.Item):title = scrapy.Field()room = scrapy.Field()dizhi = scrapy.Field()price = scrapy.Field()def get_insert_sql(self):sql = 'insert into tc_test(title,room,dizhi,price) values (%s,%s,%s,%s)'data = (self['title'],self['room'],repr(self['dizhi']),self['price'])return (sql,data)
pipelines.py代码
class MysqlProjectPipeline(object):def process_item(self, item, spider):(insert_sql,data) = item.get_insert_sql()myhelper = MysqlHelper()myhelper.execute_modify_sql(insert_sql,data)
利用scrapy爬取58同城租房信息相关推荐
- python爬取58同城租房信息_分页爬取58同城租房信息.py
import requests,re,openpyxl,os headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleW ...
- python爬虫爬取58同城租房信息(使用动态IP)输出Excel文件
python爬虫爬取58同城信息(使用动态IP) 新手,为了做一个数据分析,搞了几天,终于搞出来了,大家可以给点意见啊. # coding=utf-8 import sys import csv im ...
- python爬取58同城租房信息,用selenium爬取58同城租房信息(万级数据)
今天想做一个58同城的爬虫,然后到页面分析一下链接,发现58同城的链接的有些参数是由js动态生成的,然后我就想偷懒了.(当然其实去js文件中找到生成式并不难),但我就是不想去找.然后就想到了selen ...
- python爬取58同城租房信息_python爬虫:找房助手V1.0-爬取58同城租房信息(示例代码)...
#!/usr/bin/python # -*- encoding:utf-8 -*-importrequests frombs4 importBeautifulSoup frommultiproces ...
- 利用python爬取租房信息_python爬取58同城租房信息
代码: # coding=utf-8 import sys import csv import requests from bs4 import BeautifulSoup ''' 遇到不懂的问题?P ...
- python爬取58同城租房信息
代码: # coding=utf-8 import sys import csv import requests from bs4 import BeautifulSoup ''' 遇到不懂的问题?P ...
- (64)-- 爬取58同城网页信息
# 爬取58同城租房信息 from lxml import etree import requestsbase_url = 'http://bj.58.com/chuzu/?utm_source=ma ...
- 利用python爬取58同城简历数据
利用python爬取58同城简历数据 最近接到一个工作,需要获取58同城上面的简历信息(http://gz.58.com/qzyewu/).最开始想到是用python里面的scrapy框架制作爬虫.但 ...
- 利用python爬取58同城简历数据_利用python爬取58同城简历数据-Go语言中文社区
利用python爬取58同城简历数据 最近接到一个工作,需要获取58同城上面的简历信息(http://gz.58.com/qzyewu/).最开始想到是用python里面的scrapy框架制作爬虫.但 ...
最新文章
- PO增强,明细动抬头动
- best tips for databases for graduate research
- TX2刷机flashOS finished后,卡在determining IP address解决方案
- Ray︱高性能的分布式执行引擎 起个头~
- 八大机器学习框架对比及Tensorflow的优势
- JAVA发送邮件(163邮箱发送)
- Java连接数据库并实现添加数据有重复不插入数据
- Docker-----Cgroup资源配置详细教程,图文并茂
- Activiti7 表介绍
- 解决问题#Word导出PDF出现空白页
- SD卡数据被误删除该怎么恢复?
- cdr2020永久序列号及试用过期解决
- 批量删除iPhone苹果通讯录的办法
- 【Labview】基于Labview的BMI计算器
- 自学Redis技术,如何在Java应用
- 微信公众号教程(4)微信公众平台编辑模式介绍
- openfoam CourantNo.H
- ABB智能定位器TZID-C说明书(中文版)
- matlab利用magnify作图
- k8s-(七)暴露服务的三种方式
热门文章
- 【上班那点事】TO, CC, BCC-办公室邮件门道知多少
- 沁透著一片悠然禪意 《掬水》
- 【Linux】三、Linux 环境基础及开发工具使用(上篇)|开发工具|编辑器-vim使用|sudo提升权限问题|编译器 - gcc/g++使用|项目自动化构建工构建工具-make/Makefile
- And The Winner Is --- 百度网盘
- mysql获取当前日期的前一天_MySql取得日期(前一天、某一天)
- [转载] 晓说——第1期:揭秘游戏规则奥斯卡走下“神坛“
- 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
- 对于微信二维码相关官方文档的一些注解(微信登录和绑定微信、关注公众号)
- [SPRD CAMERA] 4 HAL Camera open流程一
- VLC保存网络视频及抓包合成视频