content

python的网络爬虫实践

五迷三道 提交于 2020-03-02 10:32:46
实现功能 1.将网页内容通过BeautifulSoup格式化,并通过分析网页信息提取 2.导出MP3文件 3.将网页信息保存成docx文件 源码实现 #coding:utf-8 import sys import os from spiderhelp import * from docx import Document from docx.shared import Pt from docx.oxml.ns import qn from docx.shared import Inches #设置缩进 from docx.enum.text import WD_PARAGRAPH_ALIGNMENT default_encoding = 'utf-8' if sys.getdefaultencoding() != default_encoding: reload(sys) sys.setdefaultencoding(default_encoding) import urllib2 import urllib import re from bs4 import BeautifulSoup global allcount global eachcount class Count(object): def __init__(self): self.allcount = 0 self

Django组件-ContentType

蹲街弑〆低调 提交于 2020-03-02 05:03:05
ContentType组件 ContentType是Django的内置的一个应用,可以追踪项目中所有的APP和model的对应关系,并记录在ContentType表中。 当项目做数据迁移后,会有很多django自带的表,其中就有django_content_type表 ContentType组件应用 在model中定义ForeignKey字段,并关联到ContentType表,通常这个字段命名为content-type 在model中定义PositiveIntergerField字段, 用来存储关联表中的主键,通常用object_id 在model中定义GenericForeignKey字段,传入上面两个字段的名字 方便反向查询可以定义GenericRelation字段 postman from django.db import models from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.fields import GenericForeignKey, GenericRelation # Create your models here. class Food(models.Model): """ id title 1 面包 2 牛奶 """

C#使用SHA1加密类(RSAFromPkcs8)支持1024位和2048位私钥

霸气de小男生 提交于 2020-03-02 01:06:57
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Security.Cryptography; namespace HelloWord.RSA { /// <summary> /// 类名:RSAFromPkcs8 /// 功能:RSA加密、解密、签名、验签 (支持1024位和2048位私钥) /// 详细:该类对Java生成的密钥进行解密和签名以及验签专用类,不需要修改 /// 版本:3.0 /// 日期:2013-07-08 /// 说明: /// 以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。 /// </summary> public sealed class RSAFromPkcs8 { /** * RSA最大解密密文大小 * 注意:这个和密钥长度有关系, 公式= 密钥长度 / 8 */ private const int MAX_DECRYPT_BLOCK = 128; /// <summary> /// 签名 /// </summary> /// <param name="content">待签名字符串</param> /

requests模块中返回的content和text的区别

≡放荡痞女 提交于 2020-03-01 19:40:22
test 类型: str 解码类型:根据 HTTP 头部响应的编码做出有根据的推测,推测的文本编码。 改变编码的方式: response.encoding= ” gbk ” 用途: response.text 返回的是 Unicode 型数据;一般用来获取文本 response.text ; content 类型: bytes 解码类型:没有指定 修改编码的方式: response.content.decode( “ utf8 ” ) 用途: response.content 返回的是 bytes 类型,也就是二进制数据;用来获取图片,文件 response.content 来源: https://www.cnblogs.com/lslin/p/12391129.html

UnicodeEncodeError: 'gbk' codec can't encode character '\\xa0' in position 46:illegal multibyte sequence

只谈情不闲聊 提交于 2020-03-01 19:19:22
一、 最近使用python写入文件时,出现了如下的错误: 但是content的内容是unicode编码,不知道怎么和gbk扯上了关系,对content使用encode()和decode(),用gbk,utf-8,gb2312各种编码解码都没有效果; 在网上查找资料,看到一篇文章关于这个的说法: http://blog.csdn.net/xiaoyi_zhang/article/details/51675099 结论是: 1.‘gbk’ codec can’t encode character :说明是将Unicode字符编码为GBK时候出现了问题,可能是本身Unicode类型的字符中,包含了一些无法转换为GBK编码的一些字符; 2. gbk无法转换'\xa0'字符,所以在转换前需要将“\xa0”替换掉;使用string.replace(u '\xa0', u ' '); 我在上述代码中使用: self.file.write(content.replace(u'\xa0', u'')) 结果有效,没有报错; 另外一种方法,在gbk解码时忽略掉不能解码的数据: self.file.write(content.encode("gbk", 'ignore').decode("gbk", "ignore")) 但是总觉得这种方法是在回避问题,后来突发灵感,这是在文件写入的时候报的错误

mysql存储图片为longblob类型,java存储与取出,前端js展示

北慕城南 提交于 2020-03-01 17:44:46
1.第一步前端上传文件以及表单,filebox_file_id_1是input的id var formData = new FormData(); formData.append("files", $("#filebox_file_id_1")[0].files[0]); var form = $('#ff').serializeObject(); formData.append("content",form.content); formData.append("title",form.title); formData.append("rank1",form.rank1); formData.append("id",form.id); $.ajax({ url: '${request.contextPath}/app/repairskills/save', type: 'post', data: formData, contentType:false, processData:false, dataType:"json", mimeType:"multipart/form-data", success: function(res) { if (res.code == 0) { $('#dlg').dialog('close'); reload(); } else if(res

asyncio+aiohttp异步爬虫

こ雲淡風輕ζ 提交于 2020-03-01 15:14:01
概念 进程:进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。进程是操作系统动态执行的基本单元。 线程:一个进程中包含若干线程,当然至少有一个线程,线程可以利用进程所拥有的资源。线程是独立运行和独立调度的基本单元。 协程:协程是一种用户态的轻量级线程。协程无需线程上下文切换的开销,也无需原子操作锁定及同步的开销。 同步:不同程序单元为了完成某个任务,在执行过程中需靠某种通信方式以协调一致,称这些程序单元是同步执行的。 异步:为完成某个任务,不同程序单元之间过程中无需通信协调,也能完成任务的方式,不相关的程序单元之间可以是异步的。 多进程:多进程就是利用 CPU 的多核优势,在同一时间并行地执行多个任务。多进程模式优点就是稳定性高,因为一个子进程崩溃了,不会影响主进程和其他子进程,但是操作系统能同时运行的进程数是有限的。 多线程:多线程模式通常比多进程快一点,但是也快不到哪去,而且,多线程模式致命的缺点就是任何一个线程挂掉都可能直接造成整个进程崩溃,因为所有线程共享进程的内存。 Python 中使用协程最常用的库莫过于 asyncio ,然后我们还需要了解一些概念: event_loop 事件循环 程序开启一个无限循环,把一些函数注册到事件循环上,当满足事件发生的时候,调用相应的协程函数 coroutine 协程 协程对象,指一个使用async关键字定义的函数

Python中json的简单使用

不想你离开。 提交于 2020-03-01 10:45:14
原文地址 What is JSON JSON ( J ava S cript O bject N otation,JavaScript物件表示法,读作/ˈdʒeɪsən/)是一種由 道格拉斯·克羅克福特 構想和設計、輕量級的 資料交換語言 ,该语言以易於讓人閱讀的文字為基礎,用来传输由属性值或者序列性的值组成的数据对象。儘管JSON是 JavaScript 的一個子集,但JSON是獨立於語言的 文本格式 ,並且採用了類似於 C語言 家族的一些習慣。 JSON 数据格式与语言无关。即便它源自 JavaScript ,但目前很多 编程语言 都支持 JSON 格式数据的生成和 解析 。JSON 的官方 MIME 类型 是 application/json ,文件扩展名是 .json 。 引自 维基百科_JSON 通过python操作json数据 导入包 import json 通过字典构造json内部数据 # 构造生成json的字典 data = { 'no' : 1 , 'name' : 'Runoob' , 'url' : 'http://www.runoob.com' , 'content' : [ 3 , 5 , '49' ] } 构造json对象与解析json对象 # 构造json对象 jsonobj = json . dumps ( data ) print (

vue-quill-editor content为null

℡╲_俬逩灬. 提交于 2020-03-01 01:20:21
<quill-editor v-model="quillContent" ref="myQuillEditor" :options="quillOptions" @change="onContentChange($event)" </quill-editor> 注意: 1.content需要通过change赋值,否则content为null onContentChange ({ html }) { this.quillContent = html }, 来源: CSDN 作者: 紫麦熊 链接: https://blog.csdn.net/m0_37378152/article/details/104580952

SilverLight:基础控件使用(2)-ComboBox,ListBox控件

a 夏天 提交于 2020-02-29 04:32:32
ylbtech-SilverLight-Basic-Control:基础控件使用(2)-ComboBox,ListBox控件 直接在 XAML 代码中设置 Items 和通过后台代码绑定数据源 ComboBox,ListBox 1.A, 返回顶部 ComboBox(下拉列表框) 1, <ComboBox Height="23" HorizontalAlignment="Left" Margin="46,45,0,0" Name="comboBox1" VerticalAlignment="Top" Width="120" ItemsSource="{Binding}"> <ComboBoxItem Content="北京" /> <ComboBoxItem Content="上海" IsSelected="True" /> <ComboBoxItem Content="济南" /> </ComboBox> <dataInput:Label Height="18" HorizontalAlignment="Left" Margin="46,82,0,0" Name="label1" VerticalAlignment="Top" Width="100" /> <ComboBox Height="23" HorizontalAlignment="Left" Margin="48,111