cari

Rumah  >  Soal Jawab  >  teks badan

python - Scrapy menggunakan xpath untuk melaporkan ralat dalam bahasa Cina

Penerangan masalah

links = sel.xpath('//i[contains(@title,"置顶")]/following-sibling::a/@href').extract()

Ralat: ValueError: Semua rentetan mestilah serasi XML: Unicode atau ASCII, tiada NULL bait atau aksara kawalan

大家讲道理大家讲道理2754 hari yang lalu1462

membalas semua(2)saya akan balas

  • 学习ing

    学习ing2017-06-30 09:57:44

    Lihat artikel: Selesaikan masalah pelaporan ralat Cina apabila xpath digunakan dalam Scrapy

    Penyelesaian

    Kaedah 1: Tukar keseluruhan pernyataan xpath kepada Unicode

    links = sel.xpath(u'//i[contains(@title,"置顶")]/following-sibling::a/@href').extract()

    Kaedah 2: Gunakan pembolehubah tajuk yang telah ditukar kepada Unicode dalam pernyataan xpath

    title = u"置顶"
    links = sel.xpath('//i[contains(@title,"%s")]/following-sibling::a/@href' %(title)).extract()

    Kaedah 3: Terus gunakan sintaks pembolehubah dalam xpath ($符号加变量名)$title, hanya lulus tajuk parameter

    links = sel.xpath('//i[contains(@title,$title)]/following-sibling::a/@href', title="置顶").extract()

    balas
    0
  • ringa_lee

    ringa_lee2017-06-30 09:57:44

    Cuba tambah u sebelum keseluruhan rentetan

    balas
    0
  • Batalbalas