首先安装python环境(废话,去百度怎么安装,后期有时间补上),使用pip命令安装scrapy,再使用scrapy命令创建项目
pip install scrapy scrapy startproject projectname
projectname就是你要创建项目的名字
项目结构如下
爬虫文件就写在spiders里面(__init__.py文件只是声明这个文件夹是一个python包)
首先创建一个py文件用来写爬虫,直接贴代码慢慢解释
import scrapy import urllib.parse import json import re class JobScrapy(scrapy.Spider): name = '51job' allowed_domains = ['www.51job.com','search.51job.com']## start_urls = ['https://search.51job.com/'] page = 1 pagesize= 0 jobtype=['0100','7700','7200','7300','7800','7400','2700','7900'] urls = 'https://search.51job.com/list/000000,000000,'+jobtype[0]+',00,9,99,+,2,' + \ str(page) + '.html?lang=c&postchannel=0000&workyear=99&cotype=99&d' \ 'egreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=' url = "search.51job.com" def __init__(self, value ,fileName): self.value = value self.fileName = fileName self.fp = open("Over_"+fileName+".json", 'w', encoding='utf-8') def parse(self, response): urls = self.urls yield scrapy.Request(url=urls, callback=self.fond_parse, dont_filter=True)## dont_filter=True 允许爬取重复页面 def fond_parse(self, response): print(response)
首先解析这个类,继承了Spider 而它也就是爬虫的一个组件。
name属性是这个爬虫模块的名字,在启动爬虫是要与模块名对应
start_urls属性是开始爬取的第一个页面
allowed_domains属性指定了允许爬取的所有域名,不在此域名内的都会被过滤
parse方法是start_url爬取的回调函数,在这里处理(我初学的时候爬了首页,其实这个url应该就是目标页,然后直接取数据,懒得修改了)首页爬取的返回值,可以通过正则表达式,xpath定位等方法找到元素位置
yield scrapy.Request(url=urls, callback=self.fond_parse, dont_filter=True)
scrapy.Request 是一次普通请求默认get,可以修改为post也可以用FormRequest表单请求
dont_filter=True 允许爬取重复页
callback是回调方法
回调方法里面可以继续处理数据或者获取新的页面,比如爬取列表页面后去爬详情页面。后面一些处理后面再写
开一个新坑,目前51job详情页面爬取有滑动验证,有时间我会研究处理的,以及后续伪装ua
Comments | 251 条评论
博客作者 Extended Opportunity
Hey, did you know there are app that mass generate hundreds of redirects to your link from different domains? Get it here – https://ext-opp.com/BUS
博客作者 Extended Opportunity
Hey, did you know there are app that mass generate hundreds of redirects to your link from different domains? Get it here – https://ext-opp.com/BUS
博客作者 Extended Opportunity
Hey, did you know there are app that mass generate hundreds of redirects to your link from different domains? Get it here – https://ext-opp.com/BUS
博客作者 Extended Opportunity
Hey, did you know there are app that mass generate hundreds of redirects to your link from different domains? Get it here – https://ext-opp.com/BUS
博客作者 Extended Opportunity
Hey, did you know there are app that mass generate hundreds of redirects to your link from different domains? Get it here – https://ext-opp.com/BUS
博客作者 Extended Opportunity
Are you still using Calendly to schedule your calls and meetings?
If your answer is yes, then you are actually hurting your business not helping it…
Calendly is limited, doesn’t unlock the full potential of your business…
And to make matters worse, they charge you monthly…
What a joke…
But you don’t have to worry, because my good friend Kundan is about to change the entire market …
You see, he just launched his newest creation AI Calenderfly…
The world’s first appointment-setting app that is fully powered by AI…
It will do all of the heavy lifting for you on complete autopilot…
AI meeting scheduling
AI reminders
AI tracking
And much much more
You can even accept payments live, and collect leads…
But it gets even better…
You don’t have to pay a penny in monthly fees…
Click here to watch AI Calenderfly in action and secure your copy at the lowest price possible… https://ext-opp.com/AICalendarfly
博客作者 ppu-pro_Pr
Наша бригада опытных мастеров предоставлена предлагать вам современные приемы, которые не только подарят долговечную защиту от холодильности, но и подарят вашему зданию стильный вид.
Мы работаем с самыми современными строительными материалами, ассигнуруя продолжительный продолжительность эксплуатации и выдающиеся результаты. Изоляция наружных поверхностей – это не только сокращение расходов на обогреве, но и заботливость о экосистеме. Энергоэффективные методы, какие мы применяем, способствуют не только зданию, но и сохранению экосистемы.
Самое главное: [url=https://ppu-prof.ru/]Утепление загородного дома снаружи цены[/url] у нас начинается всего от 1250 рублей за метр квадратный! Это доступное решение, которое превратит ваш помещение в истинный тепличный корнер с небольшими затратами.
Наши труды – это не только теплоизоляция, это постройка поля, в где все компонент отражает ваш собственный модель. Мы рассмотрим все ваши потребности, чтобы осуществить ваш дом еще дополнительно теплым и привлекательным.
Подробнее на [url=https://ppu-prof.ru/]веб-сайте компании[/url]
Не откладывайте дела о своем обители на потом! Обращайтесь к мастерам, и мы сделаем ваш жилище не только тепличным, но и более элегантным. Заинтересовались? Подробнее о наших трудах вы можете узнать на портале. Добро пожаловать в пределы комфорта и высоких стандартов.
博客作者 Kaziraexhaf
На канале [url=https://t.me/s/topcasino_rus]рейтинг казино на деньги[/url] собраны лучшие казино, где можно играть на реальные деньги и получать щедрые бонусы. Воспользуйтесь фриспинами и бонусами на депозит, играя в надежных казино с высоким рейтингом и быстрой выплатой выигрышей.
Следите за обновлениями канала, чтобы быть в курсе всех новинок и акций. Играйте в лицензированных казино, обеспечивающих безопасную и честную игру. Присоединяйтесь к каналу и открывайте для себя лучшие онлайн-казино 2024 года!
博客作者 eJNUqOkIDSon
@Kaziraexhaf tlEIKahQzHpm
博客作者 Kacvine
Для тех, кто ищет возможность выиграть реальные деньги, важен выбор надежного казино. Telegram канал [url=https://t.me/s/topcasino_rus]топ-5 лицензированных онлайн казино[/url] представляет лучшие платформы для игры на деньги. Эти казино предлагают широкий ассортимент игр, быстрые выплаты и отличные бонусы для новых и постоянных игроков.
Онлайн казино с хорошей репутацией обеспечивают честную игру и защиту данных. Подписывайтесь на канал, чтобы быть в курсе самых выгодных предложений и играть в проверенных казино на деньги.
博客作者 eJNUqOkIDSon
yxaudkbMNrD
博客作者 canada pharmaceuticals online generic
I just like the valuable info you supply for your articles. I’ll bookmark your blog and test again right here frequently. I’m reasonably certain I will be informed a lot of new stuff proper right here! Best of luck for the next!
博客作者 canada pharmaceuticals online generic
Amazing! Its genuinely amazing piece of writing, I have got much clear idea concerning from this piece of writing.
博客作者 walmart pharmacy viagra
My brother recommended I might like this website. He was entirely right. This post truly made my day. You cann’t imagine simply how much time I had spent for this info! Thanks!
博客作者 canadian pharmacy
Hi there, the whole thing is going sound here and ofcourse every one is sharing data, that’s truly excellent, keep up writing.
博客作者 canadian pharmaceuticals for usa sales
Hi friends, how is all, and what you would like to say regarding this article, in my view its in fact awesome in favor of me.