爬取oncokb
爬虫务必设置一个大的时间间隔。
确认爬取路线:
1,从网站中获取所有基因的列表;
2,爬取基因页面;
3,解析基因页面并获得位点列表;
4,爬取位点页面;
5,解析并整理所有内容。
基因列表
oncokb在这个页面中提供了基因列表的下载。
爬取基因页面
oncokb的页面URL结构非常整洁,照旧使用playwright框架来爬取,由于每个页面下可能有多个标签,标签的内容需要点击标签才会加载出来,因此这里每个标签都尝试点击一次并保存一次。
from playwright.sync_api import Playwright, sync_playwright, expect
import time
import random
def run(playwright: P...
python脚本加密和文本加密
有些时候我们要在其他服务器部署流程,需要对自己的程序进行加密来保护源码。
脚本加密
Cython加密
先使用cython将源码转为C,然后再编译的加密方法。之后写一个运行脚本通过引用加密后的库来调用里面的函数,再使用Py-Fuscate来混淆这个运行脚本,加大逆向的难度。
cython的使用方式是先编写一个setup脚本如setup.py
from distutils.core import setup
from Cython.Build import cythonize
module = cythonize(['script.py'], build_dir='directory', language_level='3')
setup(ext_modules = module)
...
邮件相关
使用python来收发邮件。
收邮件
使用POP3协议,以网易企业邮箱为例,注意要使用客户端密码。
import poplib
from email.parser import Parser
from email.header import Header
from email.header import decode_header
username = "xxxx"
password = "xxxxx"
pop3_server = "pophz.qiye.163.com"
server = poplib.POP3_SSL(pop3_server, 995, timeout=10)
server.user(username)
server.pass_(password)
re...
使用paramiko上传和下载sftp数据
paramiko是一个python库,可用于上传和下载sftp数据。这里写一个上传和下载并保持目录结构的方法
上传
从windows到linux
import paramiko
import os
# 递归创建目标Linux系统中的文件夹
def mkdir_p(sftp, remote_directory):
if remote_directory == '/':
return
try:
sftp.stat(remote_directory)
except IOError:
dirname, basename = os.path.split(remote_directory.rstrip('/'))
...
Stable Diffusion
2022年下半年开始,画图AI层出不穷,如DALL-E、NovelAI等,然后到了22年年底,ChatGPT横空出世,再带火了一次聊天AI。目前ChatGPT只有在线版本,不能离线部署,虽然没吃上热饭,至少喝一口汤。
这里是本地部署Stable Diffusion来画图,没有艺术细胞的人也能画出漂亮小姐姐啦。另外也有大佬给Stable Diffusion开发了UI(stable-diffusion-webui),对新手更友好了。
我的破电脑是2070,有8G显存,应该够用的。
安装
首先需要电脑环境中有python 3.10.6(我的python是3.11.2,试了一下,装pytorch时会报错,因此老老实实用conda创建一个python 3.10.6的环境了),然后自行安装...
mysql安装
以下过程均在root用户下操作
安装
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
yum install -y mysql-community-server
启动及检测状态
systemctl start mysqld.service
systemctl status mysqld.service
获得生成的临时密码
grep 'temporary passw...
pymol开源版安装
Pymol是被用来创作高品质的分子(特别是生物大分子如蛋白质)三维结构的软件。像AlphaFold2这种超级热门的蛋白质结构预测软件输出的pdb文件可以直接用pymol打开。
下面是安装开源版本的方式,开源版本与收费版本区别在于开源版本功能不完整、没有技术支持、帮助文档比较落后。
首先使用pip安装依赖的包
pip install numpy mkl pmw
然后在这里下载与自己python及系统版本对应的whl,再安装
python -V
# https://download.lfd.uci.edu/pythonlibs/archived/pymol-2.6.0a0-cp311-cp311-win_amd64.whl
pip install pymol-2.6.0a0-cp3...
低样本量下的测序barcode选择
对于华大平台来说,当样本量较少时,标签(测序barcode)的低多样性会导致标签的碱基cycle碱基不平衡,测序出错,最终数据无法拆分。碱基平衡对于测序非常重要,最佳情况下,A、T、C、G碱基在文库中各占25%。对于低多样性文库,一般加入Phix文库来使文库平衡。
illumina的文档说由于PhiX不含标签信息,因此无法用于平衡标签的信号,所以在测序前,对于barcode的选择也是非常重要的。
当然,由于illumina测序是检测红色(A/C)、绿色(G/T)两种光信号的强弱(Hiseq、Miseq),因此,A/C和G/T可以认为是同一类型,只需要保持每个cycle的AC比例和GT比例在50%左右即平衡。在Miniseq、NextSeq、NovaSeq中,C’是红光、T是绿光、G...
共计 247 篇文章,31 页。