Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

个人工具库,主要用于SEO,数据采集方面

Project description

思明的个人工具库
=================

该工具库主要是把我平时常用的SEO代码、数据采集代码进行封装,方便在不同的项目中引用。
如果你使用该工具库,本人无法保证代码的稳定性。


安装
======
pip install ysmtool


使用
======

import ysmtool

Http模块
=========

http=ysmtool.Http()

status,html=http.get("https://www.baidu.com")

有get 和 post 方法, 返回 (status,html) , status 为 请求返回的状态码,数值型。

ip:指定本地出口IP,如果是多网卡服务器,设置为相应网卡绑定的IP地址,就会从指定网卡进行请求

gbk:如果返回的源码是gb2312,gbk之类的,设置为True

serverIp:指定域名对应的IP,可以免解析,或者截持

ua: user_agent

cookie: cookie文本

serverPort:网站对应的端口

http.get(self,url,ip=None,ua='',refer='',cookie='',gbk=False,serverIp='',serverPort='')

http.post(self,url,ip=None,ua='',refer='',cookie='',data={},gbk=False,serverIp='',serverPort='')

tool模块
===========

bs=ysmtool.tool.soup(html)
将html转为BeautifulSoup对象

str=ysmtool.tool.urlencode(str)
对字符串进行url编码

md5str=ysmtool.tool.md5(str)
对字符串进行md5

jsontxt=ysmtool.tool.json_encode(obj)
对json对象转化成json字符串,出错时 jsontxt==None


obj=ysmtool.tool.json_decode(jsontxt)
解析json字符串,出错时 obj==None


baidu模块
=========

status,num=ysmtool.baidu.index('www.taobao.com')
淘宝的百度收录 , 正常返回的话, status == 200

status,result=ysmtool.baidu.search('连衣裙',1,10)
百度搜索“连衣裙”,返回第一页的结果, 正常返回的话, status == 200
第三个参数为每页显示条数,默认10,只能设置为10,20,30,40,50

if status==200 and result:
for item in result['items']:
print item['title'],item['url']

当查询为第1页时,result['total'] 为相关结果数:

status,result=ysmtool.baidu.search('site:www.yesiming.com',1)
if status==200 and result:
print result['total'] #收录数

凤巢关键词规划师拓词功能,需要网页端登录,然后抓包记录cookie和相关信息
每次最多返回1000个相关关键词,
kwc:竞争激烈程度
pv:整体日均搜索数
pcShow:pc搜索数
wiseShow:移动搜索数
showReason: 展现理由,数组结构 ['黑马','夜间好词']
totalWeight: 总权重,不知道什么鬼

reqid=''
eventId=''
token=''
userid=''
cookie=''

page=1
status,words=ysmtool.baidu.fengchao('双飞燕鼠标',cookie,token,userid,eventId,reqid,page)
if status==200:
for word in words:
print word['word'],word['kwc'],word['pv'],word['pcShow'],word['wiseShow'],word['showReason'],word['totalWeight']



haosou模块
==========

status,num=ysmtool.haosou.index('www.taobao.com')
淘宝的360收录 , 正常返回的话, status == 200

status,result=ysmtool.haosou.search('连衣裙',1)
360搜索“连衣裙”,返回第一页的结果 , 正常返回的话, status == 200

if status==200 and result:
for item in result['items']:
print item['title'],item['url']

当查询为第1页时,result['total'] 为相关结果数:

status,result=ysmtool.haosou.search('site:www.yesiming.com',1)
if status==200 and result:
print result['total'] #收录数

aizhan模块
===========

打印出最近半年淘宝在百度的收录情况
ysmtool.aizhan.history("www.taobao.com",'baidu')

返回淘宝最近半年的历史数据,包括百度收录,百度索引,百度反链,360收录,360反链,搜狗收录,搜狗反链, Json格式

json=ysmtool.aizhan.history('www.taobao.com')
if json:
print json

联系我
==========

有问题请发邮箱至 simon@yesiming.com
或者QQ: 176089710

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for ysmtool, version 0.9
Filename, size File type Python version Upload date Hashes
Filename, size ysmtool-0.9.tar.gz (6.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page