RNAseq上游流程

1. 软件安装

1.1需要更改镜像源配置

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
conda config --set show_channel_urls yes

1.2 安装软件

创建环境

conda create -n rnaseq python=3 #创建名为rna的软件安装环境
conda info --envs #查看当前conda环境
source activate rnaseq #激活conda的rna环境

转录组分析需要用到的软件列表

质控
fastqc , multiqc, trimmomatic, cutadapt, trim-galore
比对
star, hisat2, bowtie2, tophat, bwa, subread
计数
htseq, bedtools, deeptools, salmon

安装软件

conda install -y sra-tools
conda install -y trimmomatic
conda install -y cutadapt multiqc 
conda install -y trim-galore
conda install -y star hisat2 bowtie2
conda install -y subread tophat htseq bedtools deeptools
conda install -y salmon
source deactivate #注销当前的rna环境

2 数据下载

2.1.1 下载SRA数据

从GEO数据库下载到SRR_Acc_List.txt的文档,文档内容是SRR号码(一个号码占据一行)

#创建目录
mkdir -p project/{sra,fastq,rmdup,clean,counts,align,peaks,motif,qc/{raw,trimed}}

cd project/
#或者自己制作list文件,将下列数据写入vim文件中
vim SRR_Acc_List.txt
SRR1266976
SRR1266977
SRR1266978
SRR1266979
SRR1266980
SRR1266981

cat SRR_Acc_List.txt | while read id; do (prefetch  ${id} );done

2.1.2 Aspera Connect下载

SRA数据库下载:数据的存放地址是ftp://ftp.sra.ebi.ac.uk/vol1
举例:下载SRR1577019文件,首先我需要找到地址,去ftp://ftp.sra.ebi.ac.uk/vol1,一层层寻找,直至找到,ftp://ftp.sra.ebi.ac.uk/vol1/srr/SRR157/009/SRR1577019

去geo官网搜索srr然后下载获取SRR_Acc_List.txt 然后观察是err+7位数的,所以直接使用7位数的代码。(7位数y取最后一位,8位数y取最后2位,6位数把y变量删掉,应该是这样。)一般来说,NCBI的sra文件前面的地址都是一样的 ~/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk,那么写脚本批量下载也就不难了!最后那个 ./ 表示下载后的路径。

  1. 1批量下载srr文件(推荐)
cd ~/
mkdir -p rnaseq/{sra,fastq,rmdup,clean,align,peaks,qc/{raw,trimed}}
cd ~/rnaseq/
#创建文件夹
source activate rnaseq
cat SraAccList.txt | while read id
do
x=$(echo $id | cut -b1-6)
y=$(echo $id | cut -b10-10)
echo $id
ascp -QT -k 1 -l 300m -P33001  -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/srr/$x/00$y/$id/ ~/rnaseq/sra/
done

下载单个srr文件

ascp -QT -k 1  -l 500m -P 33001 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/srr/SRR126/000/SRR1266980 ./sra

下载fastq文件

cat SRR_Acc_List.txt | while read id
do
x=$(echo $id | cut -b1-6)
y=$(echo $id | cut -b10-10)
echo $id
ascp -QT -k 1 -l 300m -P33001  -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/$x/00$y/$id/ ./sra
done

如果下载的fastq数据是2个文件 *_1.fastq 和 *_2.fastq表明是双端测序。

Aspera用法如下:
ascp [参数] 目标文件 保存路径
-v verbose mode 实时知道程序在干啥
-T 取消加密,否则有时候数据下载不了
-i 提供私钥文件的地址
-l 设置最大传输速度,一般200m到500m,如果不设置,反而速度会比较低,可能有个较低的默认值
-k 断点续传,一般设置为值1
-Q 一般加上它
-P 提供SSH port,端口一般是33001

3. sra文件转fastq文件:

  • sra转化为fastq文件可以使用sratoolkit中的fastq-dump命令。

fastq-dump --split-3 filename

其中 --split-3 参数代表着如果是单端测序就生成一个 、.fastq文件,如果是双端测序就生成_1.fastq 和_2.fastq 文件;即单端测序输出1个fastq文件,双端测序输出2个fastq文件。
进入到sra文件中,将SRR文件夹去掉,数据文件直接保存在sra目录中,我们可以用下述代码进行批量的格式转化:
首先制作如下对应的文本

SRR8444250   ES_Input
SRR8444251   ES_Smad2_ChIPseq
SRR8444256   EB_AC_Input
SRR8444257   EB-SB_Smad2_ChIPseq
SRR8444258   EB-AC_Smad2_ChIPseq

然后

## 下面需要用循环
source activate rnaseq
cd ~/rnaseq/sra/
#把list.txt文件复制到sra目录下
## 下面用到的 list.txt 文件,就是上面自行制作的对应的文件。
cat SraAccList.txt | while read id
do 
echo $id
arr=($id)
srr=${arr[0]} #通过中括号获取数组中的某一个元素:${arr[0]} 得到第一个元素,${arr[0]} 第二个
sample=${arr[1]}
(nohup fastq-dump -A $sample -O ~/rnaseq/fastq/ --gzip --split-3  $srr &)
done 
#-A -$sample是输出文件名字
 #--gzip打包节省空间,且对后续分析不影响,如果有影响就把这个参数去掉,-O输出到目录

4. 检测数据质量及质量过滤

4.1.1 检测数据质量

fastqc生成质控报告

cd ~/rnaseq/qc/raw/
files=~/rnaseq/fastq/*.fastq.gz
ls $files | while read id 
do
echo $id
fastqc $id -t 10 -o ~/rnaseq/qc/raw/
done
#-t:调用核心数目
#-q:安静运行,运行过程中不会生成报告,在结束时将报告生成一个文件
#-o ./:文件输出当前目录

4.1.2 multiqc将各个样本的质控报告整合为一个

cd ~/rnaseq/qc/raw/
files=~/rnaseq/qc/raw/*.zip
multiqc *.zip

4.2 使用trim_galore软件对fastq文件进行质量控制-过滤

4.2.1 首先判断phred 33 和phred 64

image.png

如何判断phred 33 和phred 64?
有时候得到的原始fastq文件,无法知道质量值体系,你就无法进行质量值的过滤,我们可以在正常情况下,按照上面的表对回去,统计一下几条reads的最大和最小质量值的区间,就可以知道到底是phred 33 还是phred 64体系。
根据上图中Phred+33与Phred+64所使用的质量字符范围的不同,可以对fastq文件中质量得分的编码方式做出判断(第四行是测序质量,查看第四行符号是在Phred+64还是Phred+33范围)。图中显示,ASCII值小于等于58(相应的质量得分小于等于25)对应的字符只有在Phred+33的编码中被使用,所有Phred+64所使用的字符的ASCII值都大于等于59。在通常情况下,ASCII值大于等于74的字符只出现在Phred+64中。利用这些信息即可在程序中进行判断。(近几年应该都是Phred+33)

4.2.2 trim_galore处理fastq数据

批量处理双端测序数据

cd ~/rnaseq/clean/
files=~/rnaseq/fastq/*.gz
ls $files | while read id
do
sample=$(basename $id)
fq=${sample%%_?.fastq*}
echo $fq
trim_galore -q 10 --phred33 --length 25 --stringency 4 --paired ~/rnaseq/fastq/${fq}_1.fastq.gz ~/rnaseq/fastq/${fq}_2.fastq.gz --gzip -o ~/rnaseq/clean/
done

批量处理单端测序数据

cd ~/rnaseq/clean
files=~/rnaseq/fastq/*.gz
ls $files | while read id
do
sample=$(basename $id)
echo $sample
trim_galore -q 10 --phred33 --length 25 --stringency 4 ~/rnaseq/fastq/${sample} -o ~/rnaseq/clean/ 
done 
#具体稍作调整
  • fastqc对质控后的数据检测
cd ~/rnaseq/qc #切换到qc目录
#比较经trim_galore处理前后数据质量
ls ~/rnaseq/clean/*.gz | xargs fastqc -t 10 -o ~/rnaseq/qc/trimed/
#-t:调用核心数目
#-q:安静运行,运行过程中不会生成报告,在结束时将报告生成一个文件
#-o ./:文件输出当前目录
#*.gz:输入文件
  • multiqc可以对几个fastqc报告文件进行总结并汇总到一个报告文件中,以更直观到防止展示。使用方法multiqc <analysis directory>
multiqc ~/rnaseq/qc/trimed/  -o ~/rnaseq/qc/trimed/
# multiqc 后面直接跟上 fastqc 结果所在的文件夹
# -n 输出结果的文件名前缀
# -o 设置输出结果的文件夹
#(有时间再看)

5. hisat2 比对

官方手册:https://daehwankimlab.github.io/hisat2/manual/

参考基因组下载
有三大全文网站提供参考基因组下载,它们分别是:
1.NCBI (https://www.ncbi.nlm.nih.gov/grc
2.UCSC (http://hgdownload.soe.ucsc.edu/downloads.html)
3.Ensemble (http://asia.ensembl.org/index.html?redirect=no

目前最常用的人和小鼠的参考基因组版本如下(Jimmy总结):
|NCBI | UCSC| Ensemble|
|GRCh36 | hg18 | ENSEMBL release_52 |
|GRCh37 | hg19 | ENSEMBL release_59/61/64/68/69/75|
|GRCh38 | hg38 | ENSEMBL release_76/77/78/80/81/82|

5.1 建立index

5.1.1自己建立index

自己构建参考

#下载基因组文件
wget https://hgdownload.soe.ucsc.edu/goldenPath/hg19/bigZips/chromFa.tar.gz(UCSC版本基因组)
(我的已下载,存储在~/biosoft/Reference genome/UCSC/目录下是“chromFa.tar.gz”)
# 解压缩
tar -zxvf chromFa.tar.gz 
#解压出来的新文件都是同一类型:chr*.fa。
chr1.fa
chr10.fa
chr11.fa
chr11_gl000202_random.fa
chr12.fa
chr13.fa
[...]
cat *.fa > hg19.fa #将解压出来的所有.fa结尾的文件合并为一个文件,即hg19.fa,到此为止,参考基因组就准备好了。
hisat2-build -p 4 hg19.fa genome #建立HISAT2索引文件

#下载基因组注释文件
wget https://hgdownload.soe.ucsc.edu/goldenPath/hg19/bigZips/genes/hg19.ncbiRefSeq.gtf.gz
gunzip hg19.ncbiRefSeq.gtf.gz

5.1.2hisat 官网下载index

参考
index文件直接去官网下载
(http://daehwankimlab.github.io/hisat2/download/),如下,为下载的小鼠的index。视频教程

image.png

解压文件,解压过程中会在当前文件夹下创建mm10文件,解压后的文件就在mm10文件夹中。

 tar -zxvf /data/mouse_genome/mm10_genome.tar.gz
#我的已经下载,存储在~/biosoft/reference_hisat2/index/目录下
image.png

5.2 hisat2 比对

双端测序
cd ~/rnaseq/align
#定义索引路径
index=~/biosoft/Reference_genome/hisat2_index/ensembl/mm10/genome
#一定要注意 ~/biosoft/reference_hisat2/index/mm10/genome文件的目录,genome这个不是文件夹,是index文件的前缀
files=~/rnaseq/clean/*_1.fq.gz
outputdir=~/rnaseq/align/
ls $files | while read id
do
sample=${id%%_?_val_?.fq.gz}
files_name=$(basename $sample)
echo ${files_name}
hisat2 -p 10 --dta -x $index -1 ${sample}_1_val_1.fq.gz -2 ${sample}_2_val_2.fq.gz | samtools sort -@ 5 -o $outputdir/${files_name}.sorted.bam  && samtools index $outputdir/${files_name}.sorted.bam $outputdir/${files_name}.sorted.bam.bai && samtools flagstat $outputdir/${files_name}.sorted.bam >${files_name}.flagstat.txt
done


或者用下述代码
fq1=~/rnaseq/clean/*_1.fq.gz
fq2=~/rnaseq/clean/*_2.fq.gz
outputdir=~/rnaseq/align/
ls $files_1 | while read id
do 
fq1=$id
for i in `ls $files_2 | grep "${fq1%%_1_val*}"`
do 
fq2=$i
file=$(basename $fq1)
fq=${file%%_1_val*}
done
echo $fq1 
echo $fq2
hisat2 -p 10 --dta -x $index  -1 $fq1 -2 $fq2  | samtools sort -@ 5 -o $outputdir/${fq}.sorted.bam  && samtools index $outputdir/${fq}.sorted.bam $outputdir/${fq}.sorted.bam.bai && samtools flagstat $outputdir/${fq}.sorted.bam >$fq.flagstat.txt
done
#-x 参考基因组索引文件的前缀。
#-1 双端测序结果的第一个文件。若有多组数据,使用逗号将文件分隔。Reads的长度可以不一致。
#-2 双端测序结果的第二个文件。若有多组数据,使用逗号将文件分隔,并且文件顺序要和-1参数对应。Reads的长度可以不一致。
#-U 单端数据文件。若有多组数据,使用逗号将文件分隔。可以和-1、-2参数同时使用。Reads的长度可以不一致。
#–sra-acc 输入SRA登录号,比如SRR353653,SRR353654。多组数据之间使用逗号分隔。HISAT将自动下载并识别数据类型,进行比对。
#-S 指定输出的SAM文件。
#-t/--time 输出搜索阶段所花费的wall-clock时间 print wall-clock time taken by search phases
#另外一定要加上 --dta,后续用Stringtie处理会更容易一些,这StringTie
#使用说明里面的一句话:【NOTE: be sure to run HISAT2 with the --dta 
#option for alignment, or your results will suffer.】
# 常用参数
hisat2 [option] -1 <m1> -2 <m2> -x <index_base> -S <out.sam>

-x <path/to/base>             #索引的前缀,也可以添加路径,例如 ~/genome/homo_GRCh38.dna.primary
-1              #双端测序的第一个文件,若有多组,则用逗号隔开,名字与2要匹配,如-1 flyA_1.fq,flyB_1.fq
-2              #类比上,名字与1要匹配,如-2 flyA_2.fq,flyB_2.fq
-U              #单端数据文件
-S              #保存到的sam文件,默认输出到标准输出

# 以下为参数
-p              #线程数
--dta           # > 在下游使用stringtie组装的时候量身定做的参数。使用此选项,
                # ^ HISAT2需要更长的锚长度才能从头发现拼接位点,这样可以减少与短锚的对齐,
                # ^ 这有助于转录汇编程序显着提高计算和内存使用率。
                # ^ 当然下游不使用stringtie也可以使用此参数减少短锚定read
--dta-cufflinks #下游使用cufflinks则需要添加此参数
-q              #指定读取的测序文件是fastq文件(含有质量信息)
-f              #指定读取的测序文件是fa文件
-t              #打印加载索引文件和对齐读数所需的时钟时间
--phred33       #质量表示方法,如果使用fq文件,建议选择,同理有小众的--phred64
--min-intronlen #设置最小内含子的长度,默认值20
--max-intronlen #设置最大内含子长度,默认500000
--known-splicesite-infile <path>    #提供已知的剪接位点列表,HISAT2利用这些列表比对,可以用hisat2_extract_splice_sites.py和gtf生成信息
--novel-splicesite-outfile <path>   #在结果中生成一个剪接位点的列表
--novel-splicesite-infile <path>    # > 可以使用novel-splicesite-outfile所生成的剪接列表作为
                                    # ^ 新剪接列表,应该可以自己定义。为特定基因。
  
单端
source activate rnaseq
cd ~/rnaseq/align/
index=~/biosoft/reference_hisat2/index/mm10/genome
inputdir=~/rnaseq/clean/*fq.gz
outputdir=~/rnaseq/align/
ls $inputdir | while read id
do
sample=$(basename -s _trimmed.fq.gz $id)
echo $sample
hisat2 -p 10 -x $index -U $id | samtools sort -@ 5 -o $outputdir/${sample}.sorted.bam  && samtools index $outputdir/${sample}.sorted.bam $outputdir/${sample}.sorted.bam.bai && samtools flagstat $outputdir/${sample}.sorted.bam >$sample.flagstat.txt
done

代码参考

sam转bam文件
samtools主要参数:

-view BAM-SAM/SAM-BAM转换和提取部分比对
-sort 比对排序
-merge 聚合多个排序比对
-index 索引排序比对
-faidx 建立FASTA索引,提取部分序列

5.3 加载IGV,可视化比对结果

载入参考序列,注释和BAM文件?学IGV必看的初级教程
samtools 软件进行格式转换

SAM文件和BAM文件 samtools 是针对比对回帖的结果——sam和bam格式文件的进一步分析使用的软件。sam格式文件由于体量过大,一般都是使用bam文件来进行存储。由于bam文件是二进制存储所以文件大小比sam格式文件小许多,大约是sam格式体积的1/6 。 samtools将sam转换bam文件

samtools view -S seq.sam -b > seq.bam  #文件格式转换
samtools sort seq.bam -0 seq_sorted.bam  ##将bam文件排序
samtools index seq_sorted.bam  #对排序后对bam文件索引生成bai格式文件,用于快速随机处理。

至此一个回帖到基因组对RNA-seq文件构建完成。这个seq_sourted.bam文件可以通过samtools或者IGV( Integrative Genomics Viewer)独立软件进行查看。在IGV软件中载入seq_sourted.bam文件。 可以很直观清晰地观察到reads在基因组中的回帖情况和外显子与内含子的关系。

image.png

6 计算count

计算RNA-seq测序reads对在基因组中对比对深度。 计数工具:feature counts 公式构建:
feature counts -T 6 -t exon -g gene_id -a <gencode.gtf> -o seq_featurecount.txt <seq.bam>
用户手册下载:http://bioinf.wehi.edu.au/subread-package/SubreadUsersGuide.pdf
featurecounts说明在P31
SAM/BAM文件和GTF/GFF/SAF文件需要来自同一个参考基因组,即必须参考基因组和GTF/GFF/SAF文件来自同一个网站,同一个版本

  • 参数:

-a 输入GTF/GFF基因组注释文件
-p 这个参数是针对paired-end数据
-F 指定-a注释文件的格式,默认是GTF
-g 从注释文件中提取Meta-features信息用于read count,默认是gene_id
-t 跟-g一样的意思,其是默认将exon作为一个feature
-o 输出文件
-T 多线程数

(gencode注释文件对应版本说明说明)https://www.jianshu.com/p/eda5263d4494

gtf下载(ensembl版本 地址)
gtf下载gencode版
gtf下载(UCSC版本 地址)https://hgdownload.soe.ucsc.edu/goldenPath/mm10/bigZips/genes/mm10.refGene.gtf.gz(小鼠mm10)
如下图:https://hgdownload.soe.ucsc.edu/进入UCSC主页面后点download按钮按照下图进行(refGene.gtf.gz就是UCSC版本的gtf文件)

2021-05-19 22-48-48 的屏幕截图.png

2021-05-19 22-41-50 的屏幕截图.png

2021-05-19 22-46-01 的屏幕截图.png

2021-05-19 22-47-09 的屏幕截图.png

参考:https://www.bilibili.com/read/cv10447213/

source activate rnaseq
cd ~/rnaseq/counts/
#需要下载gtf文件(我用ensembl版)
gtf=~/biosoft/Reference_genome/gtf/ensembl/mm10/Mus_musculus.GRCm38.102.gtf.gz
inputdir=~/rnaseq/align/*.bam
featureCounts -T 10 -t exon -g gene_id -a $gtf $inputdir -o all.id.txt 
#-g # 注释文件中提取对Meta-feature 默认是gene_id, -t # 提取注释文件中的Meta-feature 
#默认是 exon, -p #参数是针对paired-end 数据, -a #输入GTF/GFF 注释文件 -o #输出文件

# 对定量结果质控
multiqc all.id.txt.summary

# 得到表达矩阵
cat all.id.txt | cut -f1,7- > counts.txt
source deactivate

featureCounts [options] <input.file>
<input.file> #输入文件,sam/bam 支持多个文件输入
-a <gtf> #参考gtf注释文件,支持gz压缩
-F <参考文件格式> #默认GTF
-T <int> #线程数 1-32
-J #对可变剪接计数
-G <str> #有-J设置时,用来提供参考基因组辅助寻找可变剪接
-M #如果设置了-M则多重比对会被统计
-o <out.file> #输出文件的名字,输出文件的内容是read的统计数目
-O #允许多重比对,当一个read比对到多个feature或多个metafeature的时候,这条read会被统计多次
-p #声明测序类型是paired-end,此时,后续统计fragment而不是read
-B #在-p设置时,只有两端都比对上的fragment才会被统计
-C #在-p设置时,-C声明比对到不同染色体的fragment不计数
-d <int> #最短的fragment ,默认50
-D <int> #最长的fragment,默认600
-f #设置后会统计feature水平数据,如exon-level,否则会统计meta-feature层面数据,如gene-level,(?应该是和-g冲突,一般与-t连用?)
-g <str> #参考的gtf提供的时候,我们需要提供一个id identifier 来将feature水平的统计汇总为meta-feature水平的统计,默认为gene_id,可以选择transcript_id、gene_name、transcript_name等
-t <str> #设置feature-type,-t指定的必须是gtf中有的feature,同时read只有落到这些feature上才会被统计到,默认是“exon”(?应该和-g冲突)

参考来源1
参考来源2
参考来源3
参考来源4

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,458评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,454评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,171评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,062评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,440评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,661评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,906评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,609评论 0 200
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,379评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,600评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,085评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,409评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,072评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,088评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,860评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,704评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,608评论 2 270

推荐阅读更多精彩内容