Python从文件中读取URL

时间:2016-07-28 05:08:45

标签: python python-2.7 python-3.x web-scraping

实际上我正在从每行包含1个url的文件中读取url,但是当我在python中读取并打开该url的循环时,这会给出BAD RESPONSE 400的输出

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii">   
</HEAD>
<BODY><h2>Bad Request - Invalid URL</h2>
<hr><p>HTTP Error 400. The request URL is invalid.</p>
</BODY></HTML>
#$#$#$#$#$#$#$#$#$#$#$#
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii">    
</HEAD>
<BODY><h2>Bad Request - Invalid URL</h2>
<hr><p>HTTP Error 400. The request URL is invalid.</p>
</BODY></HTML>
#$#$#$#$#$#$#$#$#$#$#$#

这是2个网址的输出。

但是当我在文件中只添加一个Url时,它会正常读取并输出实际的HTML页面。 (即使在循环中)

这里是我的python代码

import time
import cfscrape
scraper = cfscrape.create_scraper()
f = open('links.txt')
f2 = open('pages.html','a')
for line in iter(f):
    line2 = line
    page = scraper.get(line2).content
    f2.write(page)
    f2.write("#$#$#$#$#$#$#$#$#$#$#$#")
    time.sleep(30)
f.close()
f2.close()

以下是links.txt文件包含的链接/网址

http://kissmanga.com/Manga/Mekakushi-no-Kuni
http://kissmanga.com/Manga/Gigi-Goegoe

1 个答案:

答案 0 :(得分:1)

尝试将line2 = line更改为line2 = line.strip()