我正在尝试使用Scrapy抓取网址.但它将我重定向到不存在的页面.
Redirecting (302) to <GET http://www.shop.inonit.in/mobile/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/1275197> from <GET http://www.shop.inonit.in/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/pid-1275197.aspx>
Run Code Online (Sandbox Code Playgroud)
问题是http://www.shop.inonit.in/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/pid-1275197.aspx存在,但http://www.shop.inonit.in/mobile/Products/Inonit-Home-Decor--Knick-Knacks-Cushions/Shor-Sharaba/Andaz-Apna-Apna-Cushion-Cover/1275197没有,所以爬虫不能找到这个.我也抓了很多其他网站,但在其他任何地方都没有这个问题.有没有办法可以阻止这种重定向?
任何帮助将非常感激.谢谢.
更新:这是我的蜘蛛类
class Inon_Spider(BaseSpider):
name = 'Inon'
allowed_domains = ['www.shop.inonit.in']
start_urls = ['http://www.shop.inonit.in/Products/Inonit-Gadget-Accessories-Mobile-Covers/-The-Red-Tag/Samsung-Note-2-Dead-Mau/pid-2656465.aspx']
def parse(self, response):
item = DealspiderItem()
hxs = HtmlXPathSelector(response)
title = hxs.select('//div[@class="aboutproduct"]/div[@class="container9"]/div[@class="ctl_aboutbrand"]/h1/text()').extract()
price = hxs.select('//span[@id="ctl00_ContentPlaceHolder1_Price_ctl00_spnWebPrice"]/span[@class="offer"]/span[@id="ctl00_ContentPlaceHolder1_Price_ctl00_lblOfferPrice"]/text()').extract()
prc = price[0].replace("Rs. ","")
description = []
item['price'] = prc
item['title'] = title
item['description'] = description
item['url'] = response.url
return item
Run Code Online (Sandbox Code Playgroud) 如何向注册django应用程序的用户发送欢迎电子邮件(使用django-allauth).如果我设置ACCOUNT_EMAIL_VERIFICATION = ("mandatory"),它工作正常,用户会收到验证邮件.但由于我不需要任何电子邮件验证,因此用户只需注册并收到欢迎电子邮件.
settings.py-
ACCOUNT_AUTHENTICATION_METHOD = ("email")
ACCOUNT_EMAIL_VERIFICATION = ("none")
ACCOUNT_SIGNUP_PASSWORD_VERIFICATION = False
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_USERNAME_REQUIRED = False
EMAIL_CONFIRMATION_SIGNUP = True
ACCOUNT_EMAIL_REQUIRED =True
LOGIN_REDIRECT_URL = '/'
LOGOUT_URL = '/'
ACCOUNT_LOGOUT_ON_GET =False
ACCOUNT_LOGOUT_REDIRECT_URL = '/'
SOCIALACCOUNT_QUERY_EMAIL = (ACCOUNT_EMAIL_REQUIRED)
SOCIALACCOUNT_AUTO_SIGNUP = True
SOCIALACCOUNT_AVATAR_SUPPORT = ( 'avatar' in INSTALLED_APPS)
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = '##'
EMAIL_HOST_PASSWORD = '##'
EMAIL_PORT = 587
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
Run Code Online (Sandbox Code Playgroud)
是否有任何我错过的设置发送欢迎注册邮件?或者我必须通过我的观点传递它?似乎无法找到解决方法.任何帮助都会很棒.谢谢.
我想实现一个功能,其中点击后退按钮,我回到相同的位置.一个很好的例子可能是http://www.jabong.com/men/clothing/mens-t-shirts/.在这里,如果向下滚动并点击产品,然后从产品页面单击返回,则会到达该产品所在页面的相同位置.
此处显示的示例不会在网址中附加任何内容来记住位置.此外,它不使用pushstate或history.js(不通过ajax加载).
有关如何做到这一点的任何见解?
编辑:我使用无限滚动分页(如pinterest),页面继续向下滚动加载.当我返回时,查询再次运行并重新加载页面.如果我之前在第4页,在返回之后,页面不会加载到第4页,所以有一个休息,因此我无法达到那个位置.
所以我的问题是我如何通过无限滚动来做到这一点?
我正在使用Scrapy抓取一些页面.我从excel表中获取start_urls,我需要将url保存在项目中.
class abc_Spider(BaseSpider):
name = 'abc'
allowed_domains = ['abc.com']
wb = xlrd.open_workbook(path + '/somefile.xlsx')
wb.sheet_names()
sh = wb.sheet_by_name(u'Sheet1')
first_column = sh.col_values(15)
start_urls = first_column
handle_httpstatus_list = [404]
def parse(self, response):
item = abcspiderItem()
item['url'] = response.url
Run Code Online (Sandbox Code Playgroud)
问题是url被重定向到其他url(因此在响应url中提供了其他内容).如何获取我从excel获得的原始URL?
我想在dict模型中添加一个字段,dict在管理员上显示,并能够从管理员编辑它.
例如,我有一段感情
dict = { 'sister' : rel_score, 'mother' : rel_score, 'father': rel_score}
其中rel_score(默认值= 0)是每个关系的得分.我想将它存储dict到我的模型中并在admin中显示,以便我可以为管理员的每个关系分配这些rel_score.
此外,任何如何将分数(优先级)分配给不同元素,并根据这些分配的分数返回值的示例将非常有用.
我正在尝试使用 mod_python 将代码上传到 apache 服务器上。我已经尝试了很多,但服务器无法访问我的静态文件(我所有的图像、js 和 css)。这是我的虚拟主机设置:
<VirtualHost *:80>
ServerName mysite.com
ServerAlias www.mysite.com
Alias /static/ /home/mysite/products/static/
#
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.mysite\.com
RewriteRule (.*) http://mysite.com$1 [R=301,L]
#
DocumentRoot /home
<Directory /home/mysite/>
SetHandler mod_python
PythonHandler mod_python.publisher
PythonDebug On
</Directory>
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog …Run Code Online (Sandbox Code Playgroud) 我使用django构建了一个网站,现在我想在url domain.com/blog上为我的网站建立一个博客.我需要在wordpress中创建它,然后使用wordpress主题将其导入django.
我在网上找到的不同解决方案是将数据从WP导入django,但如何在我的django模板中使用WP主题?或者我必须制作自己的模板(我不想要)?
另外,我应该首先使用wordpress(它的搜索引擎优化插件非常强大)还是应该使用django博客应用呢?
非常困惑,任何帮助都会很棒.谢谢.
django ×4
scrapy ×2
web-scraping ×2
apache ×1
django-admin ×1
django-cms ×1
html ×1
http ×1
javascript ×1
mod-python ×1
python ×1
python-2.7 ×1
redirect ×1
web-crawler ×1