Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python SyntaxError:以';开头的非UTF-8代码\xd8和x27;归档_Python_Python 3.x_Printing_Utf 8 - Fatal编程技术网

Python SyntaxError:以';开头的非UTF-8代码\xd8和x27;归档

Python SyntaxError:以';开头的非UTF-8代码\xd8和x27;归档,python,python-3.x,printing,utf-8,Python,Python 3.x,Printing,Utf 8,我使用波斯语站点来抓取站点,并使用Python3.4代码通过lxml库获取数据和文本。在这一点上,一切都很好 text = "['هواداران استقلال از نخستین ساعات صبح امروز راهی ورزشگاه آزادی شدند.', 'به گزارش کاپ، در شرایطی که بازی امروز استقلال و الاهلی امارات از ساعت 20:15 در ورزشگاه آزادی آغاز می شود، در فاصله

我使用波斯语站点来抓取站点,并使用Python3.4代码通过lxml库获取数据和文本。在这一点上,一切都很好

text = "['هواداران استقلال از نخستین ساعات صبح امروز راهی ورزشگاه آزادی شدند.', 'به گزارش کاپ، در شرایطی که بازی امروز استقلال و الاهلی امارات از ساعت 20:15 در ورزشگاه آزادی آغاز می شود، در فاصله کمتر از 8 ساعت تا شروع مسابقه، تعدادی از هواداران آبی پوش مقابل درب غربی آزادی جمع شده اند.', 'البته درهای ورزشگاه آزادی هنوز باز نشده و بلیت فروشی نیز صورت نگرفته است.', 'بلیت فروشی بازی امروز به صورت حضوری انجام می شود و به همین دلیل استقلالی ها مجبور هستند برای استقرار در جای بهتر، زودتر در ورزشگاه حاضر شوند.', 'همچنین تعدادی از لیدرهای استقلال نیز صبح روز xa0بازی در حال ترمیم و تکمیل طرح موزاییکی خود بودند که دیروز به دلیل طوفان تهران تعدادی از قطعات آن کنده شده بود.']نیوکاسل توانست به لیگ برتر انگلیس صعود کند.به گزارش کاپ، دوشنبه شب نیوکاسل توانست پرستون نورث اند را با نتیجه 4 بر یک شکست داده و به لیگ برتر انگلیس صعود کند.به این ترتیب رافائل بنیتز فصل بعد در لیگ برتر جزیره فعالیت خواهد کرد."
#print2file(title, text, 14)
#u = unicode(text, "utf-8")
print(text)
错误:

SyntaxError: Non-UTF-8 code starting with '\xd8' in file D:/Users/Documents/PyCharm/WEB/Crawler-04.py on line 74, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
终于解决了我的问题 船首代码正确:

# # # # Import # # # #
from lxml import html
import requests
from time import sleep
import codecs

# # # #         # # # #

site    = "http://cup.ir/sport/latestarchive/0/page"
number  = 100

# # # #         # # # #

def crawl(starting_url):
    print("----- crawl -----")
    counter = 1
    page = 1
    start_page = requests.get(starting_url)
    tree = html.fromstring(start_page.text)
    #((page - 1) * counter) + counter )
    while ( (((page-1)*49) + counter) <= number ):
        if (counter >= 49 )&(counter % 49 ==0):
            #print("Error::No another link in page")
            page += 1
            link = starting_url + "/" + str(page)
            print(link)
            start_page = requests.get(link)
            tree = html.fromstring(start_page.text)
            print(tree)
            counter = 0
        link = "http://cup.ir" + tree.xpath('//li[@class ="clearfix"]/a/@href')[counter]
        get_news_from_link(link,(((page-1)*49) + counter))
        print((((page - 1) * 49) + counter), " :: ", link)
        sleep(0.75)
        counter += 1

def get_news_from_link(link,x):
    print("\n-------- get news from link ----------\n")
    page_link = requests.get(link)
    tree = html.fromstring(page_link.text)
    title = tree.xpath('//meta[@property="og:title"]/@content')[0]
    text = tree.xpath('//*/p/text()')[2:-2]
    print("Title: ",title)
    print("Text: ",text)
    print2file(title,text,x)


def print2file(title ,text ,counter):
    print("\n-------- print 2 file ----------\n")

    title = title + "\n"
    name_file = "news" + str(counter).zfill(4) + ".txt"
    file = codecs.open(name_file, "w", "utf-8")
    file.write(''.join(title))
    file.write(''.join(text))
    file.close()

def main():
    print("----- START -----")
    print("----- main -----")
    print("site: ",site)
    print("number: ", number)

    crawl(site)
    print("----- END -----")

if __name__ == "__main__":
    main()
#####导入###
从lxml导入html
导入请求
从时间上导入睡眠
导入编解码器
# # # #         # # # #
地点=”http://cup.ir/sport/latestarchive/0/page"
数字=100
# # # #         # # # #
def爬网(起始url):
打印(“----爬网------”)
计数器=1
页码=1
开始页面=请求。获取(开始url)
tree=html.fromstring(start\u page.text)
#((第1页)*柜台)+柜台)
而(((第1页)*49)+计数器)=49)和(计数器%49==0):
#打印(“错误:页面中没有其他链接”)
页码+=1
link=起始url+“/”+str(第页)
打印(链接)
开始页面=请求。获取(链接)
tree=html.fromstring(start\u page.text)
打印(树)
计数器=0
链接=”http://cup.ir“+tree.xpath('//li[@class=“clearfix”]/a/@href')[counter]
从链接(链接,((第1页)*49)+计数器)获取新闻
打印(((第1页)*49)+计数器),“::”,链接)
睡眠(0.75)
计数器+=1
def从链接(链接,x)获取新闻:
打印(“\n------从链接获取新闻-----------\n”)
页面链接=请求。获取(链接)
tree=html.fromstring(page\u link.text)
title=tree.xpath('//meta[@property=“og:title”]/@content')[0]
text=tree.xpath('//*/p/text()')[2:-2]
打印(“标题:”,标题)
打印(“文本:”,文本)
print2file(标题、文本、x)
def print2file(标题、文本、计数器):
打印(“\n------打印2文件-----------\n”)
title=title+“\n”
name_file=“news”+str(counter).zfill(4)+”.txt
文件=编解码器。打开(文件名为“w”,“utf-8”)
file.write(“”.join(标题))
file.write(“”.join(文本))
file.close()文件
def main():
打印(“----开始------”)
打印(“----主------”)
打印(“站点:”,站点)
打印(“编号:”,编号)
爬网(站点)
打印(“----结束------”)
如果名称=“\uuuuu main\uuuuuuuu”:
main()

将这一行放在代码的第一行:

# This Python file uses the following encoding: utf-8

更多信息:

确保将文件保存为UTF-8。您正在使用哪个编辑器?您的文本不是UTF-8编码的。将编辑器配置为另存为UTF-8,或完全按照错误消息所述设置编码声明。我使用Pychrm IDE并从站点和页面获取文本链接=请求。获取(链接)树=html。fromstring(page_link.text)title=树。xpath('//meta[@property=“og:title”]/@content')[0]text=树。xpath('/*/p/text()')[2:-2]我在文件中有一个简单的约会text=“string”和以下代码,要以open(name_file,'w')作为文件打印:file.write(title)file.write(text)@MortezaM,这是关于源代码文件的编码方式,即Crawler-04.py。