python-3.x - SyntaxError : invalid syntax : except urllib2. HTTPError,e:

标签 python-3.x web-scraping request urllib2

我试图通过关键字抓取此 xml 页面以获取链接,但 urllib2 向我抛出了我无法在 python3 上修复的错误...

from bs4 import BeautifulSoup
import requests
import smtplib
import urllib2
from lxml import etree
url = 'https://store.fabspy.com/sitemap_products_1.xml?from=5619742598&to=9172987078'
hdr = {'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
       'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
       'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
       'Accept-Encoding': 'none',
       'Accept-Language': 'en-US,en;q=0.8',
       'Connection': 'keep-alive'}
proxies = {'https': '209.212.253.44'}
req = urllib2.Request(url, headers=hdr, proxies=proxies)
try:
    page = urllib2.urlopen(req)
except urllib2.HTTPError as e:
    print(e.fp.read())
content = page.read()
def parse(self, response):
    try:
        print(response.status)
        print('???????????????????????????????????')
        if response.status == 200:
            self.driver.implicitly_wait(5)
            self.driver.get(response.url)
            print(response.url)
            print('!!!!!!!!!!!!!!!!!!!!')

            # DO STUFF
    except httplib.BadStatusLine:
        pass
while True:
    soup = BeautifulSoup(a.context, 'lxml')
    links = soup.find_all('loc')
    for link in links:
        if 'notonesite' and 'winter' in link.text:
            print(link.text)
            jake = link.text

我只是想通过代理发送一个 urllib 请求,看看链接是否在站点地图上......

最佳答案

urllib2在 Python3 中不可用。您应该使用 urllib.error urllib.request :

import urllib.request
import urllib.error
...
req = (url, headers=hdr) # doesn't take a proxies argument though...
...
try:
    page = urllib.request.urlopen(req)
except urllib.error.HTTPError as e:
...

...等等。但是请注意 urllib.request.Request()不带proxies争论。代理处理请引用the documentation .

关于python-3.x - SyntaxError : invalid syntax : except urllib2. HTTPError,e:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41528403/

相关文章:

Python 3.4 脚本挑战

python - 动态规划 : Number of ways of partitioning a set of numbers

python-3.x - 使用 Pandas 将数据从行移动到创建的列 - Python

java - 自动登录网站

c# - RavenDB 请求 URL 太长

node.js - 如何发送 POST 请求内容类型为 : application/octet-stream in Node js 的文件

python-3.x - 激活python virtualenv后如何自动运行shell脚本?

javascript - 逆转网页上 CSS 样式的缩小/混淆

vba - 宏使用 serverxmlhttp 请求获取部分响应

python - 如何使用Scrapy下载需要cookie的图片