Deft-pawN / sam-for-test

This is just for Test in JLL
1 stars 0 forks source link

20170809-Scrapy-知识点 #7

Open Deft-pawN opened 7 years ago

Deft-pawN commented 7 years ago

知乎上对于爬虫 的 知识 点 的 整理 需要 用到的 知识

  1. Xpath 语言 是在 xml 中 寻找 信息 的 一种 语言
  2. NO.1 正则表达式:扛把子技术
  3. Beautifulsoup 美丽汤 模块,配合request,urllib等模块(后面会详细讲),可以编写各种小巧精干的爬虫脚本

主要用到的 工具

  1. 抓包工具 ,
Deft-pawN commented 7 years ago
  1. response = urllib2.urlopen('http://www.baidu.com'); 2.urlopen参数可以传入一个request请求,response = urllib2.urlopen(request),推荐写法 3.演示 post和get传输 的方式,post类型传入 data--->encode (data)--->request.urlopen(data,url)----->response.read()
  2. 设置 headers url = 'http://www.server.com/login' user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' #agent 表示请求的身份 values = {'username' : 'cqc', 'password' : 'XXXX' } headers = { 'User-Agent' : user_agent , 'Referer':'http://www.zhihu.com/articles'} #referer对于“反盗链” data = urllib.urlencode(values) request = urllib2.Request(url, data, headers) response = urllib2.urlopen(request) page = response.read()

5.Prox代理服务器设置,避免段时间内 访问过多 被禁止 ,设置代理的方式如下 import urllib2 enable_proxy = True# 表示 可以 代理 proxy_handler = urllib2.ProxyHandler({"http" : 'http://some-proxy.com:8080'}) null_proxy_handler = urllib2.ProxyHandler({}) if enable_proxy: opener = urllib2.build_opener(proxy_handler) else: opener = urllib2.build_opener(null_proxy_handler) urllib2.install_opener(opener)

6.Http的put 方法和 delete方法 7.Cookie的使用方式 指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据,我们 可以利用Urllib2库保存我们登录的Cookie,然后再抓取其他页面就达到目的了。 理解 Opener ,重新定义之前urlopen是一个特殊实例,如果 需要 session 传入 的时候,之前的 urlopen是 没有 办法实现功能的 cookielib模块用来存储对应的cookie信息 ,cookieJar()类保存cookie ------>handler =HTTPCookieProcessor 创建 处理器 -------》创建新的opener = urllib2.build_opener(handler)----->response = opener.open() 首先获取Cookie变量 到 变量中,然后 把 cookie 变量 转到 文件中,需要 使用 FileCookiejar对象 ,接着把 保存在 文件中(text)的数据取出来,