当前位置: 首页>前端>正文

我的第一个爬虫(Python)

涓轰粈涔堣鍐欑埇铏紵

鍓嶄袱澶╂兂鍐欎釜鍚庣路API锛屽彂鐜癋lask寰堝ソ鐢紝鐒跺悗鍙戠幇鎴戣嚜宸辨病鍟ユ暟鎹晩锛屽氨鎯崇敤Python鐖偣鏁版嵁锛屽厖鍏呮暟鎹簱銆?/p>

鎼滀簡涓嬪父鐢ㄧ殑Python鐖櫕甯哥敤妗嗘灦鐭ヤ箮鍥炵瓟锛屽彂鐜癝crapy锛屽悗璺熺潃鍏ラ棬鏁欑▼鍋氫簡涓嬶紝纭疄寰堟柟渚匡紝寰堢畝娲侊紝鎴戝鐨勬椂鍊欙紝鏁欑▼鐨勪緥瀛愭湁鐐归棶棰橈紝鎴戝氨鑷繁灏濊瘯浜嗕笅锛岃褰曚笅鏉ワ紝涔熺邯蹇典笅鎴戠殑绗竴娆ython鐖櫕銆?/p>

鏈瘒鍙褰曡嚜宸卞涔犳椂鐨勪緥瀛愶紙寰堢畝鍗曪級锛屽叾浠栫殑瀹夎锛屽垱寤洪」鐩紝璇硶涔嬬被鐨勶紝璇疯嚜琛屽涔犮€?/p>

缂栧啓绗竴涓埇铏紙Spider锛?/h3>

棣栧厛鍒涘缓涓€涓埇铏」鐩?/h5>

scrapy startproject tutorial

璇ュ懡浠ゅ皢浼氬垱寤哄寘鍚笅鍒楀唴瀹圭殑tutorial鐩綍锛?/p>

tutorial/
    scrapy.cfg
    tutorial/
        __init__.py
        items.py
        pipelines.py
        settings.py
        spiders/
            __init__.py
            ...

杩欎簺鏂囦欢鐨勪綔鐢細

鏂囦欢 浣滅敤
scrapy.cfg 椤圭洰鐨勯厤缃枃浠?/td>
tutorial 璇ラ」鐩殑python妯″潡锛屼箣鍚庢偍灏嗗湪姝ゅ姞鍏ヤ唬鐮?/td>
tutorial/items.py 椤圭洰涓殑items鏂囦欢
tutorial/pipelines.py 椤圭洰涓殑pipelines鏂囦欢
tutorial/settings.py 椤圭洰鐨勮缃枃浠?/td>
tutorial/spiders/ 鏀剧疆spider浠g爜鐨勭洰褰?/td>
鍏堝垱寤轰竴涓狪tem

鍦?code>tutorial/items.py鏂囦欢涓坊鍔狅細

class DmozItem(scrapy.Item):
    title = scrapy.Field()
    link = scrapy.Field()
    desc = scrapy.Field()

鍏跺疄杩欎釜item鏄牴鎹垜浠兂瑕佺埇鍙栦粈涔堟暟鎹潵鍒涘缓鐨勶紝鍦ㄨ繖閲屾垜浠殑鐩爣缃戝潃鏄細http://dmoztools.net/Computers/Programming/Languages/Python/Books/

鐖彇閲岄潰Sites涓嬪搴旂殑title,link,desc銆?/p>

娣诲姞Item鍚庡浘鐗?/p>

我的第一个爬虫(Python),第1张
items.png
鍒涘缓spider.py

鎴戜滑鍦?code>tutorial/spiders/鏂囦欢澶逛笅鍒涘缓涓€涓猟moz_spider.py鏂囦欢锛?br> 骞跺湪鏂囦欢涓坊鍔犲涓嬩唬鐮侊細

# -*- coding:utf-8 -*-

import scrapy
from tutorial.items import DmozItem

class DmozSpider(scrapy.spiders.Spider):
    name = "dmoz" //杩欎釜鍚嶅瓧蹇呴』鍞竴锛屾槸杩愯鐖櫕鍛戒护鐨勫弬鏁?
    allowed_domains = ["dmoztools.net"]
    start_urls = [
        "http://dmoztools.net/Computers/Programming/Languages/Python/Books/"
    ]

    def parse(self, response):
        for sel in response.xpath('//div[@id="sites-section"]//div[@class="site-item "]'):
            title = sel.xpath('div[@class="title-and-desc"]//div[@class="site-title"]/text()').extract()
            link = sel.xpath('div[@class="title-and-desc"]/a/@href').extract() //@href鏄幏鍙栧睘鎬у€?
            desc = sel.xpath('div[@class="title-and-desc"]//div[@class="site-descr "]/text()').extract()
            print(title, link, desc)

鐖櫕

鐒跺悗杩愯鍛戒护锛?code>scrapy crawl dmoz

我的第一个爬虫(Python),第2张
crawl.png

鍙互鐪嬪埌缁堢涓墦鍗扮埇鍒扮殑鏁版嵁

鍦ㄥ啓XPath鐨勬椂鍊欙紝鍙戠幇鐩爣缃戠珯鐨勫睘鎬lass鍚庨潰鏈夌殑浼?strong>澶氫竴涓┖鏍?/strong>锛屼絾鏄笉娉ㄦ剰鐨勮瘽锛岃繕鐪熷彂鐜颁笉浜嗭紝杩涜€屽鑷村啓鐨剎path鍖归厤涓嶅埌鏁版嵁锛岎煒勶紝鍒氬紑濮嬪紕寰楁垜鐪熸槸澶存檿锛屽笇鏈涘ぇ瀹舵敞鎰忋€?/p>

鐒跺悗鎴戜滑鐢ㄤ笂item锛屽苟鎶婄埇鍒扮殑鏁版嵁杈撳嚭鍒癹son鏂囦欢涓紝鏇存敼dmoz_spider.py鏂囦欢涓殑浠g爜濡備笅锛?/p>

# -*- coding:utf-8 -*-

import scrapy
from tutorial.items import DmozItem

class DmozSpider(scrapy.spiders.Spider):
    name = "dmoz"
    allowed_domains = ["dmoztools.net"]
    start_urls = [
        "http://dmoztools.net/Computers/Programming/Languages/Python/Books/"
    ]

    def parse(self, response):
        for sel in response.xpath('//div[@id="sites-section"]//div[@class="site-item "]'):
            item = DmozItem()
            item["title"] = sel.xpath('div[@class="title-and-desc"]//div[@class="site-title"]/text()').extract()
            item["link"] = sel.xpath('div[@class="title-and-desc"]/a/@href').extract()
            item["desc"] = sel.xpath('div[@class="title-and-desc"]//div[@class="site-descr "]/text()').extract()
            yield item

鐒跺悗杩愯鍛戒护锛?code>scrapy crawl dmoz -o items.json

寰楀埌item.json鏂囦欢

[{"title": ["Data Structures and Algorithms with Object-Oriented Design Patterns in Python "], "link": ["http://www.brpreiss.com/books/opus7/html/book.html"], "desc": ["\r\n\t\t\t\r\n                                    The primary goal of this book is to promote object-oriented design using Python and to illustrate the use of the emerging object-oriented design patterns.\r\nA secondary goal of the book is to present mathematical tools just in time. Analysis techniques and proofs are presented as needed and in the proper context.\r\n                                    ", "\r\n                                  "]},
{"title": ["Dive Into Python 3 "], "link": ["http://www.diveintopython.net/"], "desc": ["\r\n\t\t\t\r\n                                    By Mark Pilgrim, Guide to Python 3  and its differences from Python 2. Each chapter starts with a real code sample and explains it fully. Has a comprehensive appendix of all the syntactic and semantic changes in Python 3\r\n\r\n\r\n                                    ", "\r\n                                  "]},
{"title": ["Foundations of Python Network Programming "], "link": ["http://rhodesmill.org/brandon/2011/foundations-of-python-network-programming/"], "desc": ["\r\n\t\t\t\r\n                                    This book covers a wide range of topics. From raw TCP and UDP to encryption with TSL, and then to HTTP, SMTP, POP, IMAP, and ssh. It gives you a good understanding of each field and how to do everything on the network with Python.\r\n                                    ", "\r\n                                  "]},
{"title": ["Free Python books "], "link": ["http://www.techbooksforfree.com/perlpython.shtml"], "desc": ["\r\n\t\t\t\r\n                                    Free Python books and tutorials.\r\n                                    ", "\r\n                                  "]},
{"title": ["FreeTechBooks: Python Scripting Language "], "link": ["http://www.freetechbooks.com/python-f6.html"], "desc": ["\r\n\t\t\t\r\n                                    Annotated list of free online books on Python scripting language. Topics range from beginner to advanced.\r\n                                    ", "\r\n                                  "]},
{"title": ["How to Think Like a Computer Scientist: Learning with Python "], "link": ["http://greenteapress.com/thinkpython/"], "desc": ["\r\n\t\t\t\r\n                                    By Allen B. Downey, Jeffrey Elkner, Chris Meyers; Green Tea Press, 2002, ISBN 0971677506. Teaches general principles of programming, via Python as subject language. Thorough, in-depth approach to many basic and intermediate programming topics. Full text online and downloads: HTML, PDF, PS, LaTeX. [Free, Green Tea Press]\r\n                                    ", "\r\n                                  "]},
{"title": ["An Introduction to Python "], "link": ["http://www.network-theory.co.uk/python/intro/"], "desc": ["\r\n\t\t\t\r\n                                    By Guido van Rossum, Fred L. Drake, Jr.; Network Theory Ltd., 2003, ISBN 0954161769. Printed edition of official tutorial, for v2.x, from Python.org. [Network Theory, online]\r\n                                    ", "\r\n                                  "]},
{"title": ["Making Use of Python "], "link": ["http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471219754.html"], "desc": ["\r\n\t\t\t\r\n                                    By Rashi Gupta; John Wiley and Sons, 2002, ISBN 0471219754. Covers language basics, use for CGI scripting, GUI development, network programming; shows why it is one of more sophisticated of popular scripting languages. [Wiley]\r\n                                    ", "\r\n                                  "]},
{"title": ["Practical Python "], "link": ["http://hetland.org/writing/practical-python/"], "desc": ["\r\n\t\t\t\r\n                                    By Magnus Lie Hetland; Apress LP, 2002, ISBN 1590590066. Readable guide to ideas most vital to new users, from basics common to high level languages, to more specific aspects, to a series of 10 ever more complex programs. [Apress]\r\n                                    ", "\r\n                                  "]},
{"title": ["Pro Python System Administration "], "link": ["http://sysadminpy.com/"], "desc": ["\r\n\t\t\t\r\n                                    By Rytis Sileika, ISBN13: 978-1-4302-2605-5, Uses real-world system administration examples like manage devices with SNMP and SOAP, build a distributed monitoring system, manage web applications and parse complex log files, monitor and manage MySQL databases.\r\n                                    ", "\r\n                                  "]},
{"title": ["Programming in Python 3 (Second Edition) "], "link": ["http://www.qtrac.eu/py3book.html"], "desc": ["\r\n\t\t\t\r\n                                    A Complete Introduction to the Python 3.\r\n                                    ", "\r\n                                  "]},
{"title": ["Python 2.1 Bible "], "link": ["http://www.wiley.com/WileyCDA/WileyTitle/productCd-0764548077.html"], "desc": ["\r\n\t\t\t\r\n                                    By Dave Brueck, Stephen Tanner; John Wiley and Sons, 2001, ISBN 0764548077. Full coverage, clear explanations, hands-on examples, full language reference; shows step by step how to use components, assemble them, form full-featured programs. [John Wiley and Sons]\r\n                                    ", "\r\n                                  "]},
{"title": ["Python 3 Object Oriented Programming "], "link": ["https://www.packtpub.com/python-3-object-oriented-programming/book"], "desc": ["\r\n\t\t\t\r\n                                    A step-by-step tutorial for OOP in Python 3, including discussion and examples of abstraction, encapsulation, information hiding, and raise, handle, define, and manipulate exceptions.\r\n                                    ", "\r\n                                  "]},
{"title": ["Python Language Reference Manual "], "link": ["http://www.network-theory.co.uk/python/language/"], "desc": ["\r\n\t\t\t\r\n                                    By Guido van Rossum, Fred L. Drake, Jr.; Network Theory Ltd., 2003, ISBN 0954161785. Printed edition of official language reference, for v2.x, from Python.org, describes syntax, built-in datatypes. [Network Theory, online]\r\n                                    ", "\r\n                                  "]},
{"title": ["Python Programming with the Java Class Libraries: A Tutorial for Building Web and Enterprise Applications with Jython "], "link": ["http://www.informit.com/store/product.aspx?isbn=0201616165&redir=1"], "desc": ["\r\n\t\t\t\r\n                                    By Richard Hightower; Addison-Wesley, 2002, 0201616165. Begins with Python basics, many exercises, interactive sessions. Shows programming novices concepts and practical methods. Shows programming experts Python's abilities and ways to interface with Java APIs. [publisher website]\r\n                                    ", "\r\n                                  "]},
{"title": ["Sams Teach Yourself Python in 24 Hours "], "link": ["http://www.informit.com/store/product.aspx?isbn=0672317354"], "desc": ["\r\n\t\t\t\r\n                                    By Ivan Van Laningham; Sams Publishing, 2000, ISBN 0672317354. Split into 24 hands-on, 1 hour lessons; steps needed to learn topic: syntax, language features, OO design and programming, GUIs (Tkinter), system administration, CGI. [Sams Publishing]\r\n                                    ", "\r\n                                  "]},
{"title": ["Text Processing in Python "], "link": ["http://gnosis.cx/TPiP/"], "desc": ["\r\n\t\t\t\r\n                                    By David Mertz; Addison Wesley. Book in progress, full text, ASCII format. Asks for feedback. [author website, Gnosis Software, Inc.]\r\n                                    ", "\r\n                                  "]},
{"title": ["XML Processing with Python "], "link": ["http://www.informit.com/store/product.aspx?isbn=0130211192"], "desc": ["\r\n\t\t\t\r\n                                    By Sean McGrath; Prentice Hall PTR, 2000, ISBN 0130211192, has CD-ROM. Methods to build XML applications fast, Python tutorial, DOM and SAX, new Pyxie open source XML processing library. [Prentice Hall PTR]\r\n                                    ", "\r\n                                  "]}
]

浣跨敤JSON-handle鎵╁睍鏌ョ湅

我的第一个爬虫(Python),第3张
crawl-o.png

鍦╠moz_spider.py涓紝for-in寰幆鐨勬椂鍊欙紝閲岄潰閭d竴灞傜殑xpath涓嶈鐢?code>//寮€澶翠簡锛屽彂鐜扮敤浜嗕箣鍚庝細鐖幓鐩爣缃戝潃鐨勬墍鏈夊尮閰嶇殑鏁版嵁锛岃€屼笉鏄痜or閬嶅巻鍑虹殑sel涓嬪尮閰嶇殑鏁版嵁銆?/p>

姣斿锛屾垜鎶奷moz_spider.py涓殑浠g爜绋嶄綔淇敼锛?/p>

    def parse(self, response):
        for sel in response.xpath('//div[@id="sites-section"]//div[@class="site-item "]'):
            item = DmozItem()
            //鍙湪姝ゅ鐨剎path鏉′欢鍓嶅鍔?//"
            item["title"] = sel.xpath('//div[@class="title-and-desc"]//div[@class="site-title"]/text()').extract()
            item["link"] = sel.xpath('div[@class="title-and-desc"]/a/@href').extract()
            item["desc"] = sel.xpath('div[@class="title-and-desc"]//div[@class="site-descr "]/text()').extract()
            yield item

涓嬮潰鏄姣旂粨鏋滐細

我的第一个爬虫(Python),第4张
鏁版嵁瀵规瘮.png

杩欎釜鏄疿Path鐨勮矾寰勮〃杈惧紡鐨勫師鍥狅細

浣嶇疆璺緞鍙互鏄粷瀵圭殑锛屼篃鍙互鏄浉瀵圭殑銆?br> 缁濆璺緞璧峰浜庢鏂滄潬锛?code>/锛?鑰岀浉瀵硅矾寰勪笉鏄繖鏍凤紝涓嶄娇鐢ㄦ鏂滄潬锛?code>/锛夊紑澶?/p>

缁濆浣嶇疆璺緞锛?/strong>
/step/step/...

鐩稿浣嶇疆璺緞锛?/strong>
step/step/... 鎴栬€? .//step/step/...

姣斿锛屽亣璁句綘鎯虫彁鍙?code><div>鍏冪礌涓殑鎵€鏈?code><p>鍏冪礌銆傞鍏堬紝浣犲皢鍏堝緱鍒版墍鏈夌殑<div>鍏冪礌锛?/p>

 >>> divs = response.xpath('//div')

寮€濮嬫椂锛屼綘鍙兘浼氬皾璇曚娇鐢ㄤ笅闈㈢殑閿欒鐨勬柟娉曪紝鍥犱负瀹冨叾瀹炴槸浠庢暣绡囨枃妗d腑锛岃€屼笉浠呬粎鏄粠閭d簺<div> 鍏冪礌鍐呴儴鎻愬彇鎵€鏈夌殑<p>鍏冪礌:

>>> for p in divs.xpath('//p'):  # this is wrong - gets all <p> from the whole document
...     print p.extract()

涓嬮潰鏄瘮杈冨悎閫傜殑澶勭悊鏂规硶(娉ㄦ剰.//pXPath鐨勭偣鍓嶇紑):

>>> for p in divs.xpath('.//p'):  # extracts all <p> inside
...     print p.extract()

鍙︿竴绉嶅父瑙佺殑鎯呭喌灏嗘槸鎻愬彇鎵€鏈夌洿绯?code><p>鐨勭粨鏋?

>>> for p in divs.xpath('p'):
...     print p.extract()
鍐欏叆mysql

琛ㄤ互鍙婂瓧娈靛悕瑕佸湪鐖櫕杩愯涔嬪墠鍏堝缓濂?/strong>

鍦╬ipelines.py涓鍔犲涓嬩唬鐮侊細

import sqlite3


class TutorialPipeline(object):

    def __init__(self, sqlite_file, sqlite_table):
        self.sqlite_file = sqlite_file
        self.sqlite_table = sqlite_table

    @classmethod
    def from_crawler(cls, crawler):
        return cls(
            sqlite_file = crawler.settings.get('SQLITE_FILE'), #浠巗ettings.py鑾峰彇
            sqlite_table = crawler.settings.get('SQLITE_TABLE', 'items')
        )

    def open_spider(self, spider):
        self.conn = sqlite3.connect(self.sqlite_file) // 杩炴帴鏁版嵁搴?
        self.cur = self.conn.cursor() //鑾峰彇娓告爣


    def close_spider(self, spider):
        self.conn.close() //鍏抽棴鏁版嵁搴?

    def process_item(self, item, spider):
        insert_sql = "insert into {0}({1}) values ({2})".format(self.sqlite_table, ','.join(item.keys()), ','.join(['?'] * len(item.fields.keys())))
        print(insert_sql, item.values())
        self.cur.execute(insert_sql, item.values())
        self.conn.commit()
        return item

settings.py涓鍔?

# Configure item pipelines
# See https://doc.scrapy.org/en/latest/topics/item-pipeline.html

SQLITE_FILE = 'sinaBook.db'
SQLITE_TABLE = 'book'

ITEM_PIPELINES = {
   'tutorial.pipelines.TutorialPipeline': 300,
}

鍙﹀鎶奷moz_spider.py涓殑浠g爜绋嶄綔淇敼锛?/p>

    def parse(self, response):
        for sel in response.xpath('//div[@class="wm-list-f"]'):
            for bookSel in sel.xpath('div[@class="book_list"]/ul/li'):
                print(bookSel)
                item = BookItem()
                item["bookName"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_name"]/a/text()').extract()[0] // 鍥犱负涔嬪墠杩斿洖鐨勬暟鎹兘鏄湪鏁扮粍涓紝杩欓噷鐩存帴鑾峰彇鏁版嵁
                item["bookAuthor"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_author"]/text()').extract()[0]
                item["bookType"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_type"]/a/text()').extract()[0]
                item["bookInfo"] = bookSel.xpath('div[@class="book_info"]//p[@class="info"]/a/text()').extract()[0]
                item["bookLink"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_read"]/a/@href').extract()[0]
                yield item

鐒跺悗杩愯鐖櫕锛?code>scrapy crawl sinabook

我的第一个爬虫(Python),第5张
sqlite.png
鍙峰

瀹氫綅鐩爣浠g爜锛?/strong>

chrom娴忚鍣紝妫€鏌ュ厓绱狅紝鐒跺悗command+c鎴栬€呯偣鍑讳笅鍥炬爣璁帮紝鍙互鎵撳紑鍦ㄩ〉闈笂閫夊彇鍏冪礌瀹℃煡鍔熻兘銆?/p>

我的第一个爬虫(Python),第6张
inspecter.png

鏄剧ず涓枃锛?/strong>
濡傛灉瑕佺埇鍙栦腑鏂囨暟鎹殑璇濓紝杩斿洖鐨勬槸unicode瀛楃涓诧紝浣嗘槸鍐欏叆鏁版嵁搴撳氨姝e父鏄剧ず浜嗐€?/p>

涔熷彲浠ヤ娇鐢細scrapy crawl yourSpiderName -o name.json -s FEED_EXPORT_ENCODING=utf-8

杩欐牱杈撳嚭鍒癹son鏂囦欢涓氨鏄腑鏂囦簡銆?/p>

items.py

import scrapy

class TutorialItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    pass

class BookItem(scrapy.Item):
    bookName = scrapy.Field()
    bookAuthor = scrapy.Field()
    bookType = scrapy.Field()
    bookInfo = scrapy.Field()
    bookLink = scrapy.Field()

sinabook.py

# -*- coding:utf-8 -*-

import scrapy
from tutorial.items import BookItem

class DmozSpider(scrapy.spiders.Spider):
    name = "sinabook"
    allowed_domains = ["vip.book.sina.com"]
    start_urls = [
        "http://vip.book.sina.com.cn/weibobook/man.php?pos=202058"
    ]

    def parse(self, response):
        for sel in response.xpath('//div[@class="wm-list-f"]'):
            for bookSel in sel.xpath('div[@class="book_list"]/ul/li'):
                print(bookSel)
                item = BookItem()
                item["bookName"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_name"]/a/text()').extract()
                item["bookAuthor"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_author"]/text()').extract()
                item["bookType"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_type"]/a/text()').extract()
                item["bookInfo"] = bookSel.xpath('div[@class="book_info"]//p[@class="info"]/a/text()').extract()
                item["bookLink"] = bookSel.xpath('div[@class="book_info"]//p[@class="book_read"]/a/@href').extract()
                yield item

杩愯锛?code>scrapy crawl sinabook -o items.json -s FEED_EXPORT_ENCODING=utf-8

items.json

[
{"bookAuthor": ["鏂规仺鏅?], "bookName": ["閫嶉仴娉曞尰"], "bookLink": ["/book/play/5365733-0.html?pos=20057"], "bookType": ["閮藉競鏍″洯"], "bookInfo": ["鍋跺緱绁炵鐜変僵锛屽紑澶╃溂銆佷範鍖绘湳銆佷慨鐜勫姛锛岃“鐢峰ぇ缈昏韩锛屾垚灏变竴浠h秴绾ф硶鍖伙紝鑷绐ョ敓姝汇€佲€?]},
{"bookAuthor": ["涓€缁?], "bookName": ["闅斿鐨勯潚閾滃コ瀛?], "bookLink": ["/book/play/5394624-0.html?pos=20057"], "bookType": ["閮藉競鏍″洯"], "bookInfo": ["銆婇殧澹佺殑闈掗摐濂冲銆嬬畝浠嬶細\r\n\r\n浣犱細鐜㎜OL鍚楋紵\r\n浣犳湁閬囧埌杩囧鎬殑灏忚悓濡瑰悧锛焅r鈥?]},
{"bookAuthor": ["娆ч槼鏅?], "bookName": ["鏋侀檺姝﹀皧"], "bookLink": ["/book/play/5353290-0.html?pos=20058"], "bookType": ["鐜勫够濂囧够"], "bookInfo": ["姝﹁€咃紝缃″姴闆勬祽銆俓r\n姘斾慨锛屽彉骞昏帿娴嬨€俓r\n闄嗗嚒锛屼竴鍚嶆閬撲笌鐐兼皵鍚屼慨涔嬪+銆俓r\n鎴戞湰骞斥€?]},
{"bookAuthor": ["浠欒矾娓鸿尗"], "bookName": ["婊磋璁や富"], "bookLink": ["/book/play/238973-0.html?pos=20058"], "bookType": ["鐜勫够濂囧够"], "bookInfo": ["鏃犺鏄湪绌轰腑楂橀€熼琛岀殑椋炲墤锛岃繕鏄悇绉嶅悇鏍风殑鐏靛吔銆佷粰鍏斤紝鍙浣犱竴婊撮矞琛€涓庡叾缁撳悎锛屽氨鈥?]},
{"bookAuthor": ["鐣寗姝讳笉浜?], "bookName": ["娉曞尰鐏靛紓褰?], "bookLink": ["/book/play/5368149-0.html?pos=20059"], "bookType": ["鎮枒鐏靛紓"], "bookInfo": ["涓讳汉鍏噷鍑?涓€涓櫘閫氱殑楂樹腑鐢?鏃犳剰涓嬁鍒版硶鍖诲摜鍝ュ噷鏋仐鐣欑粰鑷繁鐨勭绉樺蹇樺綍,浠庢鈥?]},
{"bookAuthor": ["涓滃寳绁炴眽"], "bookName": ["鍑洪┈浠欙細鎴戝綋澶т粰鐨勯偅鍑?], "bookLink": ["/book/play/5384290-0.html?pos=20059"], "bookType": ["鎮枒鐏靛紓"], "bookInfo": ["鍗楄寘鍖楅┈锛岃嚜鍙や互鏉ヤ互灞辨捣鍏充负鐣岋紝鍗楁柟灞炶寘灞遍亾鏈紝鍖楁柟鍒欐槸鍑洪┈浠欓┈瀹讹紝鍑洪┈浠欑户鎵夸簡鈥?]},
{"bookAuthor": ["鍥涘叧"], "bookName": ["宸ㄥ尓"], "bookLink": ["/book/play/5357907-0.html?pos=20060"], "bookType": ["鍘嗗彶鍐涗簨"], "bookInfo": ["浠栨槸涓€涓湡鍖€備粬涓嶆噦浣曚负鑻嶅ぉ澶т箟锛屽ぉ涓嬫皯鐢燂紝涔熶笉鐢橀殢娉㈤€愭祦锛屼换涔变笘娌夋诞銆傚緢澶氬勾鍚庘€?]},
{"bookAuthor": ["榫欑"], "bookName": ["闆勯湼妤氭眽"], "bookLink": ["/book/play/5345927-0.html?pos=20060"], "bookType": ["鍘嗗彶鍐涗簨"], "bookInfo": ["鐗圭鍏电帇榫欏ぉ缇斤紝鍥犱竴娆′繚鎶ょ绉樼殗闄靛嚭鍦熺殑瀹濈墿锛岃€屾剰澶栫┛瓒婃椂绌猴紝鏉ュ埌浜嗙Е鏈濇湯骞达紝姝も€?]}
]

https://www.xamrdz.com/web/2pq1867876.html

相关文章: