Requests

import requests

from PIL import Image

from io improt BytesTO

import jason

url = "..........."

print(dir(requests)) #查看基本的用法

r = requests.get(url)

print(r.text)

print(r.status_code)

print(r.encoding)

传递参数

params = {'k1':'v1','k2':'v2','k3':[1,2,3],'k4':None}  #key的值是list的话就会一一赋值
r = requests.get('http://httpbin.org/get',params) print(r.url)

二进制数据

r= requests.get('.........')

image = Image.open(BytesTO(r.content))

image.save('图片.jpg')

json处理

r = requests.get('https://github.com/timeline.jason')

print(type(r.json))

print(r.json)

print(r.text)

原始数据处理

r= requests.get('.........')

with open('图片.jpg','wb+') as f :

  for chunk in r.iter_content(1024):

    f.write(chunk)

提交表单

form = {‘username’:‘xxx’,'ddddefsc':'dscdsc'}

r = requests.post('http://httpbin.org/post',data = form)

r = requests.post('http://httpbin.org/post',data = jason.dumps(forms))

print(r.text)

cookies

url ='xxxxxxxxxxxx'

r = requests.get(url)

cookies = r.cookies

for k,v in cookies.get_dict().items():      标准的获取cookies
  print(k,,v) cookies = {'c1':'v1'} r = requests.get('http://httpbin.org/cookies',cookies= cookies) print(r.text)

重定向和重定向历史   网站跳转的时候跟踪用

r= requests.head('http://www.baidu.com',allow_redirects = True)

print(r.url)

print(r.status_code)

print(r.history)

代理

proxies = {'http':'...','https:'.....'}          #可以用来科学上网嘻嘻

r = requests.get('http://httpbin.org/cookies',proxies= proxies)

Beautiful Soup

from bs4 import BeautifulSoup
#Tag
soup = Beautifulsoup(open('test.html'))
print(soup.prettify())
print(soup.title.name)
print(soup.title)
#String
print(type(soup.title.string))
print(soup.title.string)
#Comment注释
print(type(soup.a.string))
print(soup.a.name) for items in soup.body.contents:
print(item.name)
#只找子元素的 css查询
print(soup.select('.sister')) #返回到是数组
print(soup.select('a'))
print(soup.select('#link'')) #从id开始找 print(soup.select('head >title''))

Htmlparser

from HTMLParser import HTMLParser

clase MyParser(HTMLParser):
  def handle_decl(self,decl):
    HTMLParser.handle_decl(self,decl)
    print('decl %s'% decl)   def handle_starttag(self,tag,attrs):
    HTMLParser.handle_starttag(self,tag,attrs)
    print('<'+tag+'>')   def handle_endtag(self,decl):
    HTMLParser.handle_endtag(self,decl)
    print('<'+tag+'>')
   def handle_data(self,data):
    HTMLParser.handle_data(self,data)
    print('data %s',data)
  def handle_startendtag(self,tag,attrs):
    HTMLParser.handle_startendtag(self,tag,attrs)
    print('<'+tag+ '>')
  def handle_comment(self,data):
    HTMLParser.handle_comment(self,data)
    print('data %s',data)   def close(self):
    HTMLParser.close(self)
    print('Close')
demo = MyParser()
demo.feed(open('hello.html')).read()
demo.close

html格式的尽量不要用xml的方式去处理,因为html可能格式不完整

sqlite3

import sqlite3

conn =sqlite3.connect('test.db')
create_sql = 'create table company(id int primary key not null,emp_name text not null );'
conn.execute(create_sql)
insert_sql = 'insert into company values(?,?)' conn.execute(insert_sql,(100,'LY'))
conn.execute(insert_sql,(200,'July'))
cursors = conn.execute('select id,emp_name from company')
for row in cursors:
print(row[0],row[1])
conn.close()

mySQL

需要指定mysql:host(ip/port),username,password,

然后在插入数据后要记得使用conn.commit

crawler碎碎念4 关于python requests、Beautiful Soup库、SQLlite的基本操作的更多相关文章

  1. python之Beautiful Soup库

    1.简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: Beautiful Soup提供一些简单的.python式的函数用来处理导航.搜索 ...

  2. Python Beautiful Soup库

    Beautiful Soup库 Beautiful Soup库:https://www.crummy.com/software/BeautifulSoup/ 安装Beautiful Soup: 使用B ...

  3. Python之Beautiful Soup 4使用实例

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库,它能够通过你喜欢的转换器实现惯用的文档导航.查找.修改文档的方式.Beautiful Soup 4 官方文档: ...

  4. Python之Beautiful Soup的用法

    1. Beautiful Soup的简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: Beautiful Soup提供一些简单的.pyt ...

  5. python beautiful soup库的超详细用法

    原文地址https://blog.csdn.net/love666666shen/article/details/77512353 参考文章https://cuiqingcai.com/1319.ht ...

  6. Python的Beautiful Soup简单使用

    Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据 Beautiful Soup提供一些简单的.python式的函数用来处理导航.搜索.修改分析树等功能 它是一个工具箱, ...

  7. 【python】Beautiful Soup的使用

    1. Beautiful Soup的简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: Beautiful Soup提供一些简单的.pyt ...

  8. 【Python爬虫学习笔记(3)】Beautiful Soup库相关知识点总结

    1. Beautiful Soup简介     Beautiful Soup是将数据从HTML和XML文件中解析出来的一个python库,它能够提供一种符合习惯的方法去遍历搜索和修改解析树,这将大大减 ...

  9. python Beautiful Soup库入门

    bs4库的HTML内容遍历方法 基于bs4库的HTML格式输出 显示:友好的显示 <tag>.prettify() 编码:bs4库将任何HTML输入都变成utf-8编码(python 3. ...

随机推荐

  1. java 使用反射调用方法

    每个Method的对象对应一个具体的底层方法.获得Method对象后,程序可以使用Method里面的invoke方法来执行该底层方法. Object invoke(Object obj,Object ...

  2. 1471 - Defense Lines

    After the last war devastated your country, you - as the king of the land of Ardenia - decided it wa ...

  3. Mail.Ru Cup 2018 Round 2 B. Alice and Hairdresser (bitset<> or 其他)

    传送门 题意: 给出你序列 a,在序列 a 上执行两种操作: ① 0 :查询有多少连续的片段[L,...,R],满足 a[L,...,R] > l: ② 1 p d :将第 p 个数增加 d: ...

  4. P1040 快速幂取模

    题目描述 给你三个正整数a,b,m,请你求出 \(a^b \bmod m\) 的结果. 输入格式 一行三个整数 \(a,b,m(1 \le a,b,m \le 10^9)\) . 输出格式 一个整数, ...

  5. yum安装错误:CRITICAL:yum.cli:Config Error: Error accessing file for config file:///home/linux/+

    上网搜了一下然后自己总结一份 : 出现原因:yum可能没有,或者损坏 解决: 第一步:下载   wget  http://yum.baseurl.org/download/3.2/yum-3.2.28 ...

  6. Spring Boot实战之单元测试

    Spring Boot实战之单元测试 本文介绍使用Spring测试框架提供的MockMvc对象,对Restful API进行单元测试 Spring测试框架提供MockMvc对象,可以在不需要客户端-服 ...

  7. es6笔记 day4---模块化

    模块化: 注意:需要放到服务器环境 1.如何定义模块? export  东西 export   const a = 12; export { a  as  aaa, b  as  banana } 2 ...

  8. slim中返回结果加密的

    //返回结果不加密 $this->get("/open]",function (Request $request, Response $response, $args) {  ...

  9. 2019 秦皇岛CCPC赛后总结

    以前一直想参加ICPC或CCPC的,所以即使得知比赛会打星号,我还是想去. 感觉自己对什么都没有兴趣了,比较渴望找点快乐.. 这场比赛非常强,吉老师和杜老师都来啦,还有岛娘! 有幸要到了签名 滚榜的时 ...

  10. 选题Scrum立会报告+燃尽图 04

    此作业的要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8682 组长:杨天宇 组员:魏新,罗杨美慧,王歆瑶,徐丽君 组名:组长 ...