pyppeteer最為核心類Page的接口方法

Page類是pyppeteer的核心心赶,其價(jià)值就猶如selenium的driver,具體的頁(yè)面操作都在Page類上;Page與driver比較最具優(yōu)勢(shì)的是和js的交互秦踪,可以修改本地js机错、css爬范,也可以給頁(yè)面添加js函數(shù),甚至添加自定義函數(shù)到瀏覽器的windows屬性中弱匪,也有js攔截相關(guān)的設(shè)置青瀑,更有終端模擬設(shè)置,這些功能是比driver更為強(qiáng)大的功能,但是也有一些劣勢(shì)如頁(yè)面超時(shí)方面比driver弱斥难、選擇器不簡(jiǎn)潔等問(wèn)題枝嘶。

頁(yè)面類:Page 基類:pyee.EventEmitter

此類提供了與單個(gè)chrome選項(xiàng)卡進(jìn)行交互的方法。一個(gè) Browser對(duì)象可能有多個(gè)Page對(duì)象哑诊。

選擇器
Page類選擇器相關(guān)方法有5個(gè)躬络,并且這五個(gè)都有別名,分別是:

J()別名querySelector()

JJ()別名querySelectorAll()

JJeval()別名querySelectorAllEval()

Jeval()別名querySelectorEval()

Jx()別名xpath()

協(xié)程函數(shù) querySelector(selector:str)

獲取匹配的元素的selector

參數(shù):搜索元素的選擇器字符串搭儒。

返回[ElementHandle]或者None穷当。

協(xié)程函數(shù) querySelectorAll(selector:str)

獲取匹配的所有元素selector作為列表。

參數(shù):搜索元素的選擇器

返回列表或返回空列表淹禾。

協(xié)程函數(shù) querySelectorAllEval(selector:str馁菜,pageFunction:str,*args)

對(duì)所有匹配元素執(zhí)行js

參數(shù):

selector(str)-選擇器铃岔。

pageFunction(str)-要在瀏覽器上運(yùn)行的JavaScript函數(shù)的字符串汪疮,此函數(shù)將匹配元素的數(shù)組作為第一個(gè)參數(shù)。

args(Any)-傳遞給pageFunction的其他參數(shù)毁习。

協(xié)程函數(shù) querySelectorEval(selector:str智嚷,pageFunction:str,*args)

對(duì)匹配的元素執(zhí)行js函數(shù)

參數(shù):

selector(str)-定位的選擇器字符串纺且。

pageFunction(str)-要在瀏覽器上計(jì)算的JavaScript函數(shù)的字符串盏道,此函數(shù)采用與選擇器匹配的元素作為第一個(gè)參數(shù)。

args(Any)-傳遞給pageFunction的參數(shù)载碌。

如果沒(méi)有元素匹配猜嘱,則此方法會(huì)引發(fā)錯(cuò)誤selector

協(xié)程函數(shù) addScriptTag(options: Dict[KT, VT] = None,**kwargs)

將腳本標(biāo)記添加到此頁(yè)面

其中需要一個(gè)必須參數(shù)url,path或content

url (字符串):要添加的腳本的URL嫁艇。

path (字符串):要添加的本地JavaScript文件的路徑朗伶。

content (字符串):要添加的JavaScript字符串。

type(字符串):腳本類型步咪,使用module以加載一個(gè)JavaScript ES6模塊论皆。

返回ElementHandle對(duì)象

協(xié)程函數(shù) addStyleTag(options: Dict[KT, VT] = None, **kwargs)

將樣式或鏈接標(biāo)記添加到此頁(yè)面

需要一個(gè)必須參數(shù)url,path或content

url (字符串):要添加的鏈接標(biāo)記的URL猾漫。

path (字符串):要添加的本地CSS文件的路徑点晴。

content (字符串):要添加的CSS字符串。

返回添加標(biāo)簽后的ElementHandle

協(xié)程函數(shù) authenticate(credentials: Dict[str, str])

提供http身份驗(yàn)證的憑據(jù)

credentials為None或dict含有有username和 password的字段字典

協(xié)程函數(shù) bringToFront()

將頁(yè)面置于前面(激活選項(xiàng)卡)

browser

獲取該頁(yè)面所屬的瀏覽器對(duì)象

協(xié)程函數(shù) click(selector: str, options: dict = None, **kwargs)

單擊匹配selector的元素

將先獲取selector元素静袖,在視圖底部觉鼻,將滾動(dòng)到視圖中,然后使用mouse單擊元素的中心队橙,如果沒(méi)有匹配selector坠陈,則該方法會(huì)引發(fā) PageError

可用選項(xiàng)包括:

button(STR):萨惑,left,right或middle仇矾,默認(rèn)為 left庸蔼。

clickCount (int):默認(rèn)為1。

delay(int | float):等待時(shí)間mousedown和 mouseup以毫秒為單位默認(rèn)為0贮匕。

注意

如果此方法觸發(fā)元素并且存在其他的的點(diǎn)擊事件姐仅,則容易產(chǎn)生混亂的判斷,單擊并等待的正確模式如下:

await asyncio.gather(
page.waitForNavigation(waitOptions),
page.click(selector, clickOptions),
)

協(xié)程函數(shù) close(options: Dict[KT, VT] = None, **kwargs)

作用是關(guān)閉此頁(yè)面刻盐。

可用選項(xiàng):

runBeforeUnload(bool):默認(rèn)為False掏膏,是否運(yùn)行頁(yè)面的處理函數(shù)

注意

如果runBeforeUnload傳遞為True,則beforeunload 可以執(zhí)行彈出對(duì)話框敦锌,可以通過(guò)頁(yè)面的dialog事件手動(dòng)處理 馒疹。

協(xié)程函數(shù) content()

獲取頁(yè)面的完整HTML源碼

協(xié)程函數(shù) cookies(* urls )

獲取cookie,如果未指定URL乙墙,則此方法返回當(dāng)前頁(yè)面URL的cookie颖变,如果指定了URL,則僅返回這些URL的cookie听想。

返回的cookie是包含以下字段的字典列表:

name (STR)

value (STR)

url (STR)

domain (STR)

path (STR)

expires (數(shù)字):Unix時(shí)間腥刹,以秒為單位

httpOnly (布爾)

secure (布爾)

session (布爾)

sameSite(str):'Strict'或'Lax'

coverage

返回Coverage

協(xié)程函數(shù) deleteCookie(* cookies )

刪除cookie,cookies 應(yīng)該是包含這些字段的字典:

name(str):必填

url (STR)

domain (STR)

path (STR)

secure (布爾)

協(xié)程函數(shù) emulate(options: dict = None, **kwargs)

模擬給定的設(shè)備信息和用戶代理汉买,此方法是調(diào)用兩個(gè)方法的快捷方式:

setUserAgent()

setViewport()

options 是包含以下字段的字典:

viewport(dict)含下列字段

width (int):頁(yè)面寬度(以像素為單位)衔峰。

height (int):頁(yè)面寬度(以像素為單位)。

deviceScaleFactor(float):指定設(shè)備比例(可以認(rèn)為是dpr)录别,默認(rèn)為1朽色。

isMobile(bool):是否考慮標(biāo)簽邻吞。默認(rèn)為组题。meta viewportFalse

hasTouch(bool):指定viewport是否支持觸摸事件。默認(rèn)為False抱冷。

isLandscape(bool):指定視口是否處于橫向模式崔列。默認(rèn)為False。

userAgent (str):用戶代理字符串

協(xié)程函數(shù) emulateMedia(mediaType: str = None)

模擬頁(yè)面的css媒體類型旺遮。

參數(shù):

mediaType(str) - 更改頁(yè)面的CSS媒體類型赵讯,允許值'screen','print'和 None耿眉,傳入None禁用模擬媒體

協(xié)程函數(shù) evaluate(pageFunction:str边翼,* args,force_expr:bool = False )

在瀏覽器上執(zhí)行js-function或js-expression并獲取結(jié)果鸣剪。

參數(shù):

pageFunction(str) - 要在瀏覽器上執(zhí)行的js-function / expression的字符串

force_expr(bool) - 如果為True组底,則計(jì)算pageFunction為表達(dá)式丈积。如果為False(默認(rèn)值),請(qǐng)嘗試自動(dòng)檢測(cè)函數(shù)或表達(dá)式债鸡。

注意:force_exproption是僅關(guān)鍵字參數(shù)江滨。

協(xié)程函數(shù) evaluateHandle(pageFunction:str,* args )

執(zhí)行此頁(yè)面上的功能

evaluateHandle()和evaluate()之間的區(qū)別是 evaluateHandle返回JSHandle對(duì)象(不是值)厌均。

參數(shù):

pageFunction(str) - 要執(zhí)行的JavaScript函數(shù)唬滑。

協(xié)程函數(shù) evaluateOnNewDocument(pageFunction:str,* args )

在文檔中添加JavaScript函數(shù)棺弊。

將在以下情況發(fā)生時(shí)調(diào)用此函數(shù):

每當(dāng)頁(yè)面被導(dǎo)航時(shí)

每當(dāng)子框架被附加或?qū)Ш綍r(shí)晶密。在這種情況下,在新附加的幀的上下文中調(diào)用該函數(shù)模她。

協(xié)程函數(shù) exposeFunction(name:str惹挟,pyppeteerFunction:Callable [[...],Any] )

將python函數(shù)添加到瀏覽器的window對(duì)象中缝驳,可以從chrome進(jìn)程調(diào)用已注冊(cè)的函數(shù)连锯。

參數(shù):

name(string) - 窗口對(duì)象上函數(shù)的名稱。

pyppeteerFunction(Callable) - 將在python進(jìn)程上調(diào)用的函數(shù)用狱。此函數(shù)不應(yīng)該是異步函數(shù)运怖。

協(xié)程函數(shù) focus(selector:str )

聚焦匹配的元素,如果沒(méi)有元素匹配selector,拋出PageError

frames

獲取此頁(yè)面的所有frame

協(xié)程函數(shù) goBack(options: dict = None, **kwargs)

導(dǎo)航到歷史記錄中的上一頁(yè),如果不能回去夏伊,返回None摇展。

協(xié)程函數(shù) goForward(options: dict = None, **kwargs)

導(dǎo)航到歷史記錄中的下一頁(yè),可用選項(xiàng)與goto()方法相同溺忧,如果不能前進(jìn)咏连,返回None。

協(xié)程函數(shù) goto(url:str鲁森,options:dict = None祟滴,** kwargs )

打開(kāi)url地址

參數(shù):

url(str) - 將頁(yè)面導(dǎo)航到的URL,網(wǎng)址應(yīng)包括類型https://歌溉。

可用選項(xiàng)包括:

timeout(int):最大導(dǎo)航時(shí)間(以毫秒為單位)垄懂,默認(rèn)為30秒,傳遞0給禁用超時(shí)痛垛〔莼郏可以使用該setDefaultNavigationTimeout()方法更改默認(rèn)值。

waitUntil(str | List [str]):何時(shí)考慮導(dǎo)航成功匙头,默認(rèn)為load漫谷。給定事件字符串列表,在所有事件被觸發(fā)后蹂析,導(dǎo)航被認(rèn)為是成功的舔示⌒嗄活動(dòng)可以是:

load:當(dāng)load事件被觸發(fā)時(shí)。

domcontentloaded:當(dāng)DOMContentLoaded事件被觸發(fā)時(shí)斩郎。

networkidle0:當(dāng)網(wǎng)絡(luò)連接數(shù)不超過(guò)0時(shí)脑融,至少500毫秒。

networkidle2:當(dāng)網(wǎng)絡(luò)連接不超過(guò)2個(gè)缩宜,至少500毫秒肘迎。

該P(yáng)age.goto會(huì)引發(fā)錯(cuò)誤:

存在SSL錯(cuò)誤(例如,在自簽名證書的情況下)

目標(biāo)網(wǎng)址無(wú)效

在timeout導(dǎo)航期間超過(guò)

然后主資源無(wú)法加載

注意

goto()要么引發(fā)錯(cuò)誤锻煌,要么返回主要資源響應(yīng)妓布。唯一的例外是導(dǎo)航到about:blank或?qū)Ш降骄哂胁煌⒘械南嗤琔RL,這將成功并返回None宋梧。

無(wú)頭模式不支持導(dǎo)航到PDF文檔匣沼。

協(xié)程函數(shù) hover(selector:str )

鼠標(biāo)懸停在匹配元素上,如果沒(méi)有元素則拋出PageError捂龄。

協(xié)程函數(shù) injectFile(filePath:str )

[已棄用]將文件注入此頁(yè)面释涛,不推薦使用此方法,請(qǐng)addScriptTag()改用倦沧。

isClosed()

判斷頁(yè)面是否關(guān)閉

keyboard

獲取Keyboard對(duì)象

mainFrame

獲取此頁(yè)面Frame的主要內(nèi)容

協(xié)程函數(shù) metrics()

獲取頁(yè)面屬性唇撬,返回包含指標(biāo)作為鍵/值對(duì)的字典:

Timestamp (number):獲取度量標(biāo)準(zhǔn)樣本的時(shí)間戳。

Documents (int):頁(yè)面中的文檔數(shù)展融。

Frames (int):頁(yè)面中的幀數(shù)窖认。

JSEventListeners (int):頁(yè)面中的事件數(shù)。

Nodes (int):頁(yè)面中DOM節(jié)點(diǎn)的數(shù)量告希。

LayoutCount (int):完整部分頁(yè)面布局的總數(shù)扑浸。

RecalcStyleCount (int):頁(yè)面樣式重新計(jì)算的總數(shù)。

LayoutDuration (int):頁(yè)面持續(xù)時(shí)間的組合持續(xù)時(shí)間燕偶。

RecalcStyleDuration (int):所有頁(yè)面樣式重新計(jì)算的組合持續(xù)時(shí)間喝噪。

ScriptDuration (int):JavaScript執(zhí)行的組合持續(xù)時(shí)間。

TaskDuration (int):瀏覽器執(zhí)行的所有任務(wù)的組合持續(xù)時(shí)間杭跪。

JSHeapUsedSize (float):使用的JavaScript堆大小仙逻。

JSHeapTotalSize (float):JavaScript堆總大小。

mouse

獲取Mouse對(duì)象

協(xié)程函數(shù) pdf(options: dict = None, **kwargs)

生成頁(yè)面的pdf

選項(xiàng):

path (str):保存PDF的文件路徑涧尿。

scale(float):網(wǎng)頁(yè)渲染的比例,默認(rèn)為1檬贰。

displayHeaderFooter(bool):顯示頁(yè)眉和頁(yè)腳姑廉。默認(rèn)為False。

headerTemplate(str):打印標(biāo)題的HTML模板翁涤。應(yīng)該是有效的HTML標(biāo)記與以下類桥言。

date:格式化的打印日期

title:文件名

url:文件位置

pageNumber:當(dāng)前頁(yè)碼

totalPages:文檔中的總頁(yè)數(shù)

footerTemplate(str):打印頁(yè)腳的HTML模板萌踱。應(yīng)該使用相同的模板headerTemplate。

printBackground(bool):打印背景圖形号阿。默認(rèn)為 False并鸵。

landscape(bool):紙張方向。默認(rèn)為False扔涧。

pageRanges(字符串):要打印的紙張范圍园担,例如“1-5,8,11-13”。默認(rèn)為空字符串枯夜,表示所有頁(yè)面弯汰。

format(str):紙張格式。如果設(shè)置湖雹,優(yōu)先于 width或height咏闪。默認(rèn)為L(zhǎng)etter。

width (str):紙張寬度摔吏,接受標(biāo)有單位的值鸽嫂。

height (str):紙張高度,接受標(biāo)有單位的值征讲。

margin(字典):紙張邊距溪胶,默認(rèn)為None。

top (str):上邊距稳诚,接受標(biāo)有單位的值哗脖。

right (str):右邊距,接受標(biāo)有單位的值扳还。

bottom (str):底部邊距才避,接受標(biāo)有單位的值。

left (str):左邊距氨距,接受標(biāo)有單位的值桑逝。

返回: 返回生成的PDF bytes對(duì)象。

注意

目前僅在無(wú)頭模式下支持生成pdf俏让。

pdf()使用printcss media 生成頁(yè)面的pdf楞遏,要生成帶screen媒體的pdf ,請(qǐng)?jiān)O(shè)置page.emulateMedia('screen')首昔。

默認(rèn)情況下寡喝,pdf()生成帶有修改顏色的pdf以進(jìn)行打印。使用該--webkit-print-color-adjust屬性強(qiáng)制渲染精確顏色勒奇。

await page.emulateMedia('screen')await page.pdf({'path': 'page.pdf'})的width预鬓,height和margin選項(xiàng)接受標(biāo)記單位值,未標(biāo)記的值被視為像素赊颠。

幾個(gè)例子:

page.pdf({'width': 100}):打印寬度設(shè)置為100像素格二。

page.pdf({'width': '100px'}):打印寬度設(shè)置為100像素劈彪。

page.pdf({'width': '10cm'}):打印寬度設(shè)置為100厘米。

所有可用的單位是:

px:像素

in:英寸

cm:厘米

mm:毫米

格式選項(xiàng)包括:

Letter:8.5英寸x 11英寸

Legal:8.5英寸x 14英寸

Tabloid:11英寸x 17英寸

Ledger:17英寸x 11英寸

A0:33.1英寸x 46.8英寸

A1:23.4英寸x 33.1英寸

A2:16.5英寸x 23.4英寸

A3:11.7英寸x 16.5英寸

A4:8.27英寸x 11.7英寸

A5:5.83英寸x 8.27英寸

A6:4.13英寸x 5.83英寸

注意

headerTemplate和footerTemplate標(biāo)記有以下限制:

不在模板內(nèi)的腳本標(biāo)記顶猜。

頁(yè)面樣式在模板中不可見(jiàn)沧奴。

協(xié)程函數(shù) plainText()

[已棄用]以純文本格式獲取頁(yè)面內(nèi)容。

協(xié)程函數(shù)queryObjects(prototypeHandle:pyppeteer.execution_context.JSHandle )

迭代js堆并查找具有句柄的所有對(duì)象长窄。

參數(shù):

prototypeHandle(JSHandle) - 原型對(duì)象的JSHandle滔吠。

協(xié)程函數(shù) reload()

刷新本頁(yè)

協(xié)程函數(shù) screenshot(options: dict = None, **kwargs)

屏幕截屏

可以使用以下選項(xiàng):

path(str):保存圖像的文件路徑。屏幕截圖類型將從文件擴(kuò)展名中推斷出來(lái)抄淑。

type(str):指定屏幕截圖類型屠凶,可以是jpeg或 png。默認(rèn)為png肆资。

quality(int):圖像的質(zhì)量矗愧,在0-100之間。不適用于png圖像郑原。

fullPage(bool):如果為true唉韭,請(qǐng)截取完整的可滾動(dòng)頁(yè)面。默認(rèn)為False犯犁。

clip(字典):指定頁(yè)面剪切區(qū)域的對(duì)象属愤。此選項(xiàng)應(yīng)包含以下字段:

x (int):剪輯區(qū)域左上角的x坐標(biāo)。

y (int):剪輯區(qū)域左上角的y坐標(biāo)酸役。

width (int):剪切區(qū)域的寬度住诸。

height (int):剪切區(qū)域的高度。

omitBackground (bool):隱藏默認(rèn)的白色背景并允許捕獲具有透明度的屏幕截圖涣澡。

encoding(str):圖像的編碼可以是 'base64'或'binary'贱呐。默認(rèn)為'binary'。

協(xié)程函數(shù) select(selector:str入桂,* values )

選擇選項(xiàng)并返回所選值奄薇,如果沒(méi)有元素匹配selector,請(qǐng)加注ElementHandleError抗愁。

協(xié)程函數(shù) setBypassCSP(enabled:bool )

切換繞過(guò)頁(yè)面的Content-Security-Policy馁蒂。

注意

CSP繞過(guò)在CSP初始化而不是評(píng)估時(shí)發(fā)生,通常這意味著page.setBypassCSP 應(yīng)該在導(dǎo)航到域之前調(diào)用它蜘腌。

協(xié)程函數(shù) setCacheEnabled(enabled:bool = True )

為每個(gè)請(qǐng)求啟用/禁用緩存沫屡,默認(rèn)情況下,啟用緩存

協(xié)程函數(shù) setContent(html:str )

將內(nèi)容設(shè)置為此頁(yè)面

參數(shù):

html(str) - 要分配給頁(yè)面的HTML標(biāo)記逢捺。

協(xié)程函數(shù) setCookie(* cookies )

設(shè)置cookie

cookies 應(yīng)該是包含這些字段的字典:

name(str):必填

value(str):必填

url (STR)

domain (STR)

path (STR)

expires (數(shù)字):Unix時(shí)間谁鳍,以秒為單位

httpOnly (布爾)

secure (布爾)

sameSite(str):'Strict'或'Lax'

setDefaultNavigationTimeout(timeout:int )

更改默認(rèn)的最大導(dǎo)航超時(shí),此方法更改以下方法的默認(rèn)超時(shí)30秒:

goto()

goBack()

goForward()

reload()

waitForNavigation()

參數(shù):

timeout(int) - 最大導(dǎo)航時(shí)間(以毫秒為單位)劫瞳,設(shè)置為零0 禁用超時(shí)倘潜。

協(xié)程函數(shù) setExtraHTTPHeaders(title:Dict [str,str] )

設(shè)置額外的HTTP標(biāo)頭,將在頁(yè)面啟動(dòng)的每個(gè)請(qǐng)求中發(fā)送額外的HTTP標(biāo)頭

注意

page.setExtraHTTPHeaders 不保證傳出請(qǐng)求中的標(biāo)頭順序志于。

參數(shù):

headers(Dict) - 包含要與每個(gè)請(qǐng)求一起發(fā)送的其他http標(biāo)頭的字典涮因。所有標(biāo)頭值必須是字符串。

本篇文章整理了三分之二還有三分之一明天繼續(xù)伺绽,來(lái)不及了养泡。

重要:因?yàn)橥焦?hào)的文章格式很難保證,所以后面文章選擇性在其他平臺(tái)同步奈应,歡迎移步公眾號(hào)(Python之戰(zhàn)),每日更新原汁原味澜掩!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市杖挣,隨后出現(xiàn)的幾起案子肩榕,更是在濱河造成了極大的恐慌,老刑警劉巖惩妇,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件株汉,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡歌殃,警方通過(guò)查閱死者的電腦和手機(jī)乔妈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)氓皱,“玉大人路召,你說(shuō)我怎么就攤上這事〔ú模” “怎么了股淡?”我有些...
    開(kāi)封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)各聘。 經(jīng)常有香客問(wèn)我揣非,道長(zhǎng),這世上最難降的妖魔是什么躲因? 我笑而不...
    開(kāi)封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任早敬,我火速辦了婚禮,結(jié)果婚禮上大脉,老公的妹妹穿的比我還像新娘搞监。我一直安慰自己,他們只是感情好镰矿,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布琐驴。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪绝淡。 梳的紋絲不亂的頭發(fā)上宙刘,一...
    開(kāi)封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音牢酵,去河邊找鬼悬包。 笑死,一個(gè)胖子當(dāng)著我的面吹牛馍乙,可吹牛的內(nèi)容都是我干的布近。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼丝格,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼撑瞧!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起显蝌,我...
    開(kāi)封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤仑荐,失蹤者是張志新(化名)和其女友劉穎麦撵,沒(méi)想到半個(gè)月后近速,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體低缩,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年涩禀,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了料滥。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡艾船,死狀恐怖葵腹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情屿岂,我是刑警寧澤践宴,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站爷怀,受9級(jí)特大地震影響阻肩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜运授,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一烤惊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧吁朦,春花似錦柒室、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)空骚。三九已至,卻和暖如春擂仍,著一層夾襖步出監(jiān)牢的瞬間囤屹,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工防楷, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留牺丙,地道東北人则涯。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓复局,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親粟判。 傳聞我的和親對(duì)象是個(gè)殘疾皇子亿昏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 有時(shí)候購(gòu)買的商品,屬性很多档礁,想做成表格進(jìn)行篩選角钩。自然用技術(shù)宅的爬蟲方式做了 ```python # -*- ...
    超哥__閱讀 4,225評(píng)論 0 8
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒(méi)有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,089評(píng)論 1 32
  • 1.OC里用到集合類是什么? 基本類型為:NSArray呻澜,NSSet以及NSDictionary 可變類型為:NS...
    輕皺眉頭淺憂思閱讀 1,359評(píng)論 0 3
  • 本文是在學(xué)習(xí)和使用kotlin時(shí)的一些總結(jié)與體會(huì)递礼,一些代碼示例來(lái)自于網(wǎng)絡(luò)或Kotlin官方文檔,持續(xù)更新... 對(duì)...
    竹塵居士閱讀 3,268評(píng)論 0 8
  • 我每次出差錯(cuò)
    艾edu閱讀 160評(píng)論 0 0